gpt4 book ai didi

java - 为每个 HashMap 键值创建唯一的ArrayList - Java

转载 作者:行者123 更新时间:2023-12-01 10:52:30 25 4
gpt4 key购买 nike

我正在尝试读取有关我正在制作的电路模拟器中每个门的输入的信息。输入连接的文件信息如下所示:

// Connections from inputs to gates (inputLabel, gateLabel)
INPUT(A, AND1)
INPUT(B, AND1)
INPUT(B, AND2)
INPUT(C, AND2)

我正在尝试创建一个以 gatewayLabel 为键的 Map,并存储 inputLabel 信息。

即-


Key --- Info
AND1 | A,B
AND2 | B,C

我现在的代码是这样的:

String inputCircuitLabel = params[0];
String inGateLabel = params[1];

if(!iConnM.containsKey(inGateLabel)){

inputCircuitLabels.add(inputCircuitLabel);
iConnM.put(inGateLabel, inputCircuitLabels);

}

else{

inputCircuitLabels.add(inCircuitLabel);

}

我想知道是否有一种直观的方法来创建一个单独的类,并对其进行调用,例如:

GateInput gi = new GateInput(inGateLabel);
ArrayList<GateInput> al;

为了得到每个gateLabel唯一的arrayList。因为此时 AND2 最终引用了 A,B,B,C 而不仅仅是 B,C。

最佳答案

您应该能够使用字符串->列表的映射来完成此操作。使用这种方法,每个门标签将获得它自己唯一的电路标签列表。

示例代码:

Map<String, List<String>> iConnM = new HashMap<String, List<String>>();

String inputCircuitLabel = params[0];
String inGateLabel = params[1];

if (!iConnM.containsKey(inGateLabel)) {
iConnM.put(inGateLabel, Arrays.asList(inputCircuitLabel));
} else {
iConnM.get(inGateLabel).add(inputCircuitLabel);
}

关于java - 为每个 HashMap 键值创建唯一的ArrayList - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33770311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com