当前位置: 首页>>代码示例>>Java>>正文


Java BiMap类代码示例

本文整理汇总了Java中com.google.common.collect.BiMap的典型用法代码示例。如果您正苦于以下问题:Java BiMap类的具体用法?Java BiMap怎么用?Java BiMap使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BiMap类属于com.google.common.collect包,在下文中一共展示了BiMap类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: onCreate

import com.google.common.collect.BiMap; //导入依赖的package包/类
@SuppressWarnings("unchecked")
@Override
public void onCreate(Map<ResourceLocation, ?> slaveset, BiMap<ResourceLocation, ? extends IForgeRegistry<?>> registries)
{
    final ClearableObjectIntIdentityMap<IBlockState> idMap = new ClearableObjectIntIdentityMap<IBlockState>()
    {
        @SuppressWarnings("deprecation")
        @Override
        public int get(IBlockState key)
        {
            Integer integer = (Integer)this.identityMap.get(key);
            // There are some cases where this map is queried to serialize a state that is valid,
            //but somehow not in this list, so attempt to get real metadata. Doing this hear saves us 7 patches
            if (integer == null && key != null)
                integer = this.identityMap.get(key.getBlock().getStateFromMeta(key.getBlock().getMetaFromState(key)));
            return integer == null ? -1 : integer.intValue();
        }
    };
    ((Map<ResourceLocation,Object>)slaveset).put(BLOCKSTATE_TO_ID, idMap);
    final HashBiMap<Block, Item> map = HashBiMap.create();
    ((Map<ResourceLocation,Object>)slaveset).put(BLOCK_TO_ITEM, map);
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:23,代码来源:GameData.java

示例2: SoundManager

import com.google.common.collect.BiMap; //导入依赖的package包/类
public SoundManager(SoundHandler p_i45119_1_, GameSettings p_i45119_2_)
{
    this.invPlayingSounds = ((BiMap)this.playingSounds).inverse();
    this.playingSoundPoolEntries = Maps.<ISound, SoundPoolEntry>newHashMap();
    this.categorySounds = HashMultimap.<SoundCategory, String>create();
    this.tickableSounds = Lists.<ITickableSound>newArrayList();
    this.delayedSounds = Maps.<ISound, Integer>newHashMap();
    this.playingSoundsStopTime = Maps.<String, Integer>newHashMap();
    this.sndHandler = p_i45119_1_;
    this.options = p_i45119_2_;

    try
    {
        SoundSystemConfig.addLibrary(LibraryLWJGLOpenAL.class);
        SoundSystemConfig.setCodec("ogg", CodecJOrbis.class);
    }
    catch (SoundSystemException soundsystemexception)
    {
        logger.error(LOG_MARKER, (String)"Error linking with the LibraryJavaSound plug-in", (Throwable)soundsystemexception);
    }
}
 
开发者ID:SkidJava,项目名称:BaseClient,代码行数:22,代码来源:SoundManager.java

示例3: configureResourceSetContainerState

import com.google.common.collect.BiMap; //导入依赖的package包/类
private void configureResourceSetContainerState(final List<N4JSProject> allProjects) {
	// a container is a project.
	List<String> containers = new LinkedList<>();
	BiMap<String, N4JSProject> container2project = HashBiMap.create();

	// the URIs of all resources directly contained in a project/container.
	Multimap<String, URI> container2Uris = HashMultimap.create();

	for (N4JSProject project : allProjects) {
		String container = FileBasedWorkspace.N4FBPRJ + project.getLocation();
		container2project.put(container, project);
		containers.add(container);

		for (IN4JSSourceContainer sourceContainer : project.getSourceContainers()) {
			Iterables.addAll(container2Uris.get(container), sourceContainer);
		}
	}

	// Define the Mapping of Resources (URIs to Container === Projects),
	rsbAcs.configure(containers, container2Uris);
}
 
开发者ID:eclipse,项目名称:n4js,代码行数:22,代码来源:N4HeadlessCompiler.java

示例4: testConflictInsertKV

import com.google.common.collect.BiMap; //导入依赖的package包/类
/**
 * BiMap存储数据时出现冲突
 * 存储时,如果key相同,则会覆盖,则逆转后不会有问题
 * 存储时,如果key不同,value有相同,则逆转时会抛出异常IllegalArgumentException
 */
@Test
public void testConflictInsertKV() {
    // 存储相同key数据,此时会覆盖k1=v1
    BiMap<String, String> biMap1 = HashBiMap.create();
    biMap1.put("k1", "v1");
    biMap1.put("k1", "v2");
    System.out.println("biMap1: " + biMap1);

    // 获取的只有 v2=k1
    BiMap<String, String> inverseBiMap1 = biMap1.inverse();
    System.out.println("inverseBiMap1: " + inverseBiMap1);

    System.out.println("--------------------------------------");

    // 存储相同的value数据
    BiMap<String, String> biMap2 = HashBiMap.create();
    biMap2.put("k1", "v1");

    // 此时抛出异常 java.lang.IllegalArgumentException: value already present: v1
    biMap2.put("k2", "v1");
    System.out.println("biMap2: " + biMap2);

    BiMap<String, String> inverseBiMap2 = biMap2.inverse();
    System.out.println("inverseBiMap2: " + inverseBiMap2);
}
 
开发者ID:cbooy,项目名称:cakes,代码行数:31,代码来源:HashBiMapDemo.java

示例5: fixOids

import com.google.common.collect.BiMap; //导入依赖的package包/类
@SuppressWarnings("rawtypes")
private void fixOids(IdEObject idEObject, OidProvider oidProvider, BiMap<Long, IdEObject> temp) {
	if (idEObject == null) {
		return;
	}
	if (temp.containsValue(idEObject)) {
		return;
	}
	((IdEObjectImpl) idEObject).setOid(oidProvider.newOid(idEObject.eClass()));
	if (objects.containsValue(idEObject)) {
		temp.put(idEObject.getOid(), idEObject);
	}
	for (EReference eReference : idEObject.eClass().getEAllReferences()) {
		Object val = idEObject.eGet(eReference);
		if (eReference.isMany()) {
			List list = (List) val;
			for (Object o : list) {
				fixOids((IdEObject) o, oidProvider, temp);
			}
		} else {
			fixOids((IdEObject) val, oidProvider, temp);
		}
	}
}
 
开发者ID:shenan4321,项目名称:BIMplatform,代码行数:25,代码来源:IfcModel.java

示例6: onSubstituteActivated

import com.google.common.collect.BiMap; //导入依赖的package包/类
@Override
public void onSubstituteActivated(Map<ResourceLocation, ?> slaveset, Block original, Block replacement, ResourceLocation name)
{
    final BiMap<Block, Item> blockItemMap = (BiMap<Block, Item>)slaveset.get(BLOCK_TO_ITEM);
    if (blockItemMap.containsKey(original))
    {
        Item i = blockItemMap.get(original);
        if (i instanceof ItemBlock)
        {
            try
            {
                FinalFieldHelper.setField(blockField, i, replacement);
            }
            catch (Exception e)
            {
                throw Throwables.propagate(e);
            }
        }
        blockItemMap.forcePut(replacement,i);
    }
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:22,代码来源:GameData.java

示例7: getUnmappedMethodMapping

import com.google.common.collect.BiMap; //导入依赖的package包/类
public Optional<MethodRef> getUnmappedMethodMapping(CtClass targetClass, CtMethod
        handleMethod) {
    BiMap<MethodRef, MethodRef> methodsInverted = methodRefs.inverse();
    String descriptor = InjectorPlugin.removeCallbackDescriptor(handleMethod.getMethodInfo2()
            .getDescriptor());
    for (Map.Entry<MethodRef, MethodRef> mapping : methodsInverted.entrySet()) {
        MethodRef key = mapping.getKey();
        if (targetClass.getName().replace('.', '/').equals(key.getOwner()) && handleMethod
                .getName
                ().equals
                (key
                .getName()) && descriptor.equals(key.getDesc())) {
            return Optional.of(mapping.getValue());
        }
    }
    return Optional.empty();
}
 
开发者ID:PizzaCrust,项目名称:Mixinite,代码行数:18,代码来源:Mappings.java

示例8: modifyTypes

import com.google.common.collect.BiMap; //导入依赖的package包/类
/** Applies the supplied modifications to the GraphQLTypes. */
private static BiMap<String, GraphQLType> modifyTypes(
    BiMap<String, GraphQLType> mapping,
    ImmutableListMultimap<String, TypeModification> modifications) {
  BiMap<String, GraphQLType> result = HashBiMap.create(mapping.size());
  for (String key : mapping.keySet()) {
    if (mapping.get(key) instanceof GraphQLObjectType) {
      GraphQLObjectType val = (GraphQLObjectType) mapping.get(key);
      if (modifications.containsKey(key)) {
        for (TypeModification modification : modifications.get(key)) {
          val = modification.apply(val);
        }
      }
      result.put(key, val);
    } else {
      result.put(key, mapping.get(key));
    }
  }
  return result;
}
 
开发者ID:google,项目名称:rejoiner,代码行数:21,代码来源:ProtoRegistry.java

示例9: expectMissing

import com.google.common.collect.BiMap; //导入依赖的package包/类
@Override
protected void expectMissing(Entry<K, V>... entries) {
  super.expectMissing(entries);
  for (Entry<K, V> entry : entries) {
    Entry<V, K> reversed = reverseEntry(entry);
    BiMap<V, K> inv = getMap().inverse();
    assertFalse(
        "Inverse should not contain entry " + reversed, inv.entrySet().contains(reversed));
    assertFalse(
        "Inverse should not contain key " + reversed.getKey(),
        inv.containsKey(reversed.getKey()));
    assertFalse(
        "Inverse should not contain value " + reversed.getValue(),
        inv.containsValue(reversed.getValue()));
    /*
     * TODO(cpovirk): This is a bit stronger than super.expectMissing(), which permits a <key,
     * someOtherValue> pair.
     */
    assertNull(
        "Inverse should not return a mapping for key " + reversed.getKey(),
        inv.get(reversed.getKey()));
  }
}
 
开发者ID:paul-hammant,项目名称:googles-monorepo-demo,代码行数:24,代码来源:AbstractBiMapTester.java

示例10: SoundManager

import com.google.common.collect.BiMap; //导入依赖的package包/类
public SoundManager(SoundHandler p_i45119_1_, GameSettings p_i45119_2_)
{
    this.invPlayingSounds = ((BiMap)this.playingSounds).inverse();
    this.categorySounds = HashMultimap.<SoundCategory, String>create();
    this.tickableSounds = Lists.<ITickableSound>newArrayList();
    this.delayedSounds = Maps.<ISound, Integer>newHashMap();
    this.playingSoundsStopTime = Maps.<String, Integer>newHashMap();
    this.listeners = Lists.<ISoundEventListener>newArrayList();
    this.pausedChannels = Lists.<String>newArrayList();
    this.sndHandler = p_i45119_1_;
    this.options = p_i45119_2_;

    try
    {
        SoundSystemConfig.addLibrary(LibraryLWJGLOpenAL.class);
        SoundSystemConfig.setCodec("ogg", CodecJOrbis.class);
        net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new net.minecraftforge.client.event.sound.SoundSetupEvent(this));
    }
    catch (SoundSystemException soundsystemexception)
    {
        LOGGER.error(LOG_MARKER, (String)"Error linking with the LibraryJavaSound plug-in", (Throwable)soundsystemexception);
    }
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:24,代码来源:SoundManager.java

示例11: getTrainsFollowingEachOther

import com.google.common.collect.BiMap; //导入依赖的package包/类
public BiMap<Train, Train> getTrainsFollowingEachOther() {
  if (false && trailingTrains.size() + 1 == world.getTrains().size()) {
    return trailingTrains;
  }
  trailingTrains.clear();

  Map<Journey, Journey> journeyTrail = getJourneysFollowingEachOther();
  journeyTrail.forEach((key, value) -> trailingTrains.put(key.getTrain(), value.getTrain()));

  return trailingTrains;
}
 
开发者ID:sinaa,项目名称:train-simulator,代码行数:12,代码来源:JourneyHelper.java

示例12: match

import com.google.common.collect.BiMap; //导入依赖的package包/类
@Override
public Iterable<BiMap<V, V>> match(BiMap<V, V> baseIso, G viewGraph, G insertGraph) {
    ProblemNeighborhoodAware<BiMap<V, V>, V> problem = toProblem(baseIso, viewGraph, insertGraph);
    Iterable<BiMap<V, V>> result = () -> problem.generateSolutions().iterator();

    return result;
}
 
开发者ID:SmartDataAnalytics,项目名称:SubgraphIsomorphismIndex,代码行数:8,代码来源:IsoMatcherJena.java

示例13: registerSubstitutionAlias

import com.google.common.collect.BiMap; //导入依赖的package包/类
void registerSubstitutionAlias(String name, GameRegistry.Type type, Object toReplace) throws ExistingSubstitutionException
{
    ResourceLocation nameToSubstitute = new ResourceLocation(name);
    final BiMap<Block, Item> blockItemMap = getBlockItemMap();
    if (type == GameRegistry.Type.BLOCK)
    {
        iBlockRegistry.addSubstitutionAlias(Loader.instance().activeModContainer().getModId(), nameToSubstitute, (Block)toReplace);
        iBlockRegistry.activateSubstitution(nameToSubstitute);
    }
    else if (type == GameRegistry.Type.ITEM)
    {
        iItemRegistry.addSubstitutionAlias(Loader.instance().activeModContainer().getModId(), nameToSubstitute, (Item)toReplace);
        iItemRegistry.activateSubstitution(nameToSubstitute);
    }
}
 
开发者ID:F1r3w477,项目名称:CustomWorldGen,代码行数:16,代码来源:GameData.java

示例14: getTypeMap

import com.google.common.collect.BiMap; //导入依赖的package包/类
public static BiMap<String, Integer> getTypeMap()
{
	BiMap<String, Integer> typeMap = HashBiMap.create();
	typeMap.put(ITEM_NODE_TYPE, ITEM_TYPE);
	typeMap.put(PARALLEL_NODE_TYPE, PARALLEL_TYPE);
	typeMap.put(SERIAL_NODE_TYPE, SERIAL_TYPE);
	typeMap.put(DECISION_NODE_TYPE, DECISION_TYPE);
	return typeMap;
}
 
开发者ID:equella,项目名称:Equella,代码行数:10,代码来源:WorkflowNode.java

示例15: dump

import com.google.common.collect.BiMap; //导入依赖的package包/类
public synchronized void dump(Writer writer) throws IOException {
    for (Map.Entry<S, BiMap<String, Integer>> entry : id2num.entrySet()) {
        S subset = entry.getKey();
        for (Map.Entry<String, Integer> entry1 : entry.getValue().entrySet()) {
            String id = entry1.getKey();
            Integer num = entry1.getValue();
            writer.write(subset + ";" + id + ";" + num + System.lineSeparator());
        }
    }
}
 
开发者ID:powsybl,项目名称:powsybl-core,代码行数:11,代码来源:StringToIntMapper.java


注:本文中的com.google.common.collect.BiMap类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。