gpt4 book ai didi

java - 从列表中获取值

转载 作者:行者123 更新时间:2023-12-01 06:37:59 25 4
gpt4 key购买 nike

我有两个大小相同但类型不同的列表。

例如:

List<String> controlColor = new ArrayList<String>();
List<Integer> brightnessValue_1 = new ArrayList<Integer>();

现在我想从同一位置的两个列表中获取数据。

例如:

 int i = 0;

for(String ledColor : controlColor) {
Color color = Color.parseCSS(ledColor);
int brightnessValue = brightnessValue_1.get(i);
++i;
}

通过上述方式,我可以一次从两个列表和同一位置获取数据,但是有没有其他方法可以做同样的事情,因为我想避免使用额外的变量。

最佳答案

您可以使用普通的 for 循环:

for (int i = 0; i < Math.min(controlColor.size(), brightnessValue.size(); ++i) {
String ledColor = controlColor.get(i);
int brightnessValue = brightnessValue.get(i);
}

或一对迭代器:

Iterator<String> colorIt = colors.iterator();
Iterator<Integer> brightnessIt = brightness.iterator();
while (brightnessIt.hasNext() && colorIt.hasNext()) {
String ledColor = colorIt.next();
int brightnessValue = brightnessIt.next();
}

(以及其他选项)。后者是更可取的,因为它对于像 LinkedList 这样的列表实现更有效,其中 get 操作是 O(n),而且不少于对于像ArrayList这样的实现来说是高效的。

关于java - 从列表中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33498278/

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