for loop用于调整我的arraylist

时间:2016-07-02 05:32:38

标签: java arraylist

我已经在这个问题上敲了一会儿。如果我0123第二个循环,我的for循环将返回//。 但如果不这样做,它将打印出0123数组8次。  我想要两个循环,但我无法弄清楚如何让它们一起工作。我希望第一个循环中的0123

[0]
[-1]
[-1]
[1]
[2]
[-1]
[-1]
[2]

从第二个所以我可以比较两个。有人可以帮忙吗?我可以在for循环之外使用其他东西吗?

import java.util.*;
      public class test {
           public static List<List<Integer>> work;
           public static void main (String[] args) {
           List<String> dan = Arrays.asList  ("Red", "Orange", "Yellow", "Green", "Blue", "Violet", "Orange", "Blue");
           List<String> Jan =Arrays.asList("Red","Green","Blue","Blue");
           for (int i =0; i < dan.size(); i++){
         //for (int y =0; y < Jan.size(); y++){
           List<Integer> work = Arrays.asList((Jan).indexOf(dan.get(i)));
           System.out.println(work); 
                        }
                      }
                     }
                    //}

1 个答案:

答案 0 :(得分:0)

您的代码与结构方面所需的内容相差甚远,无法实现您的目标。这是一个快速而肮脏的解决方案,可以让你接近。我建议使用for循环进行更多练习。

import java.util。*; 公共课测试 {

public static void main(String[] args) 
{
    List<String> dan = Arrays.asList  ("Red", "Orange", "Yellow", "Green", "Blue", "Violet", "Orange", "Blue");
    List<String> Jan =Arrays.asList("Red","Green","Blue","Blue");
    // TODO Auto-generated method stub
    for (int i =0; i < Jan.size(); i++)
    {
        System.out.println(i); 
    }
    System.out.println(""); line break between the output.



    List<Integer> temp = new ArrayList<Integer>();
    boolean found = false;
    for (int i =0; i < dan.size(); i++)
    {
        found = false;
        for (int y =0; y < Jan.size(); y++)
        {
            if( dan.get(i) == Jan.get(y) )
            {   
                temp.add(y);
                found = true;
                break;
            }
        }
        if(found == false)
        {
            temp.add(-1);
        }
    }
    for(int j = 0; j < temp.size(); j++)
    {
        System.out.println(temp.get(j));
    }

}

}