簡體   English   中英

如何從循環JAVA外部調用循環內部的ArrayList的值?

[英]How to call values of ArrayList inside for loop, from outside the loop JAVA?

我是編程新手。 我正在編寫這個 Java ArrayList 我需要從for循環中獲得的值數組以跳出循環以進行更多計算。 我怎樣才能完成它? 在這里,我需要 309 作為循環外的int

ArrayList<Integer> idNumber = new ArrayList(12);    //creat arraylist  
idNumber.add(1);
idNumber.add(9);
idNumber.add(9);
idNumber.add(9);
idNumber.add(3);
idNumber.add(0);
idNumber.add(9);
idNumber.add(0);
idNumber.add(4);
idNumber.add(6);
idNumber.add(7);
idNumber.add(0);

System.out.println(idNumber);  

for(int i = 4; i < 7; i++) {
    System.out.print(idNumber.get(i));  
}

像下面這樣基本的東西可能對你有用。 但如果它用於更大的索引集,則可以使用 StringBuilder。

String result = "";

for(int i = 4; i<7; i++)  {
    result = result+idNumber.get(i);
}
Integer.valueOf(result);

我相信以下實現了你想要的。

ArrayList<Integer> idNumber = new ArrayList(12);    //creat arraylist  
idNumber.add(1);
idNumber.add(9);
idNumber.add(9);
idNumber.add(9);
idNumber.add(3);
idNumber.add(0);
idNumber.add(9);
idNumber.add(0);
idNumber.add(4);
idNumber.add(6);
idNumber.add(7);
idNumber.add(0);

System.out.println(idNumber);  
int amount = 0;
for(int i = 4; i < 7; i++) {
    amount = amount * 10 + idNumber.get(i);
}
System.out.print(amount);  

運行上面的代碼會打印 309。

或者,您可以使用流 API

// import java.util.stream.Collectors;

Integer value = idNumber.stream()
                        .skip(4)
                        .limit(3)
                        .collect(Collectors.reducing(Integer.valueOf(0), (a, i) -> a * 10 + i));
System.out.println(value);

你可以在這里看到完整的代碼: https ://www.jdoodle.com/iembed/v0/t8k

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM