2015-12-01 181 views
-3

我在数组中生成并存储数字(这些数字是1到4)我想要一个循环来检查第一个数字是否为1,如果它是做动作,如果它没有移动到2等等。 。如何获得数组中的第一个值,然后是第二个等?

final ArrayList<Integer> listInteger = new ArrayList<>(); 
final int[] NumbersArray = new int[20]; 
for (int generatedNumbers = 0; generatedNumbers < 2 + temp; generatedNumbers++) { 
     value = (int) (Math.random() * 4 + 1); 
     NumbersArray[generatedNumbers] = value; 

我试图

for(Integer i : NumbersArray) { 
        if (i == 1) { 
         System.out.println("1"); 
Color1.setBackgroundColor(Color.parseColor("#FF7F7500")); 
         } 
        else if (i == 2) { 
         else if (i == 2) { 
         System.out.println("2"); 
Color2.setBackgroundColor(Color.parseColor("#FF0000")); 
        } 
+2

为什么你'listInteger'?一旦你创建它,你就不会使用它。什么是“建造者”? –

+1

为什么你需要一个循环来检查第一个数字是否为1? – Blackbelt

+2

你不应该在'StringBuilder#append'内串联。这违背了使用它的目的。 – gonzo

回答

-1
for(Integer i : listInteger){ 
    if(i == 1){ 
    // do smth 
    break; // quit loop you found your number 1 
    } 
} 

这是在它如何循环。

+0

如果数字为2,3或4,该怎么办?我只是有'如果(我= 2){/ /做东西}' – TroubleSome

+0

@TroubleSome等什么?你想知道数组的第一个数字是什么?不知道你在尝试什么...... –

+0

是的,我生成随机数并将它们存储在一个数组中,然后我想从数组1中读取数字,然后对该数字执行操作,因此可以说生成的数字是1,4,2,1我想为它们中的每一个都做一个动作,并延迟几秒钟 – TroubleSome

-1

您可以使用For-Each,而不是为了迭代: 这里是它是如何实现的:

for(int elem : arrayListOfInteger){ 
    elem; //do your work with the element 
} 
相关问题