如何洗一个arraylist一次

时间:2017-03-14 20:11:08

标签: java

所以目前我正在尝试制定一个交易或不交易类型程序,并且在开始时我希望游戏改变Arraylist的值,以便玩家无法记住arraylist的索引。但是,每当我输入相同的数字以连续两次选择公文包时,就会出现两个不同的值。我如何制作它以便arraylist只会被洗牌一次,而不是每次我输入一个数字?

public static void main(String[]args) {


Collections.shuffle(array());
    for(int i = 27; i > 0; i-- ){
    System.out.println("Input the case number that you would like, the numbers are between 1 and 26");
    Scanner input = new Scanner(System.in);

    int casenum = input.nextInt();
    System.out.println(array().get(casenum));


    }

}


public static ArrayList array(){
    ArrayList list = new ArrayList();
    list.add(001);
    list.add(1);
    list.add(5);
    list.add(10);
    list.add(25);
    list.add(50);
    list.add(75);
    list.add(100);
    list.add(200);
    list.add(300);
    list.add(400);
    list.add(500);
    list.add(750);
    list.add(1000);
    list.add(5000);
    list.add(10000);
    list.add(25000);
    list.add(50000);
    list.add(75000);
    list.add(100000);
    list.add(200000);
    list.add(300000);
    list.add(400000);
    list.add(500000);
    list.add(750000);
    list.add(1000000);




    return list;

1 个答案:

答案 0 :(得分:2)

public static void main(String[]args) {




  ArrayList myArray = array();
Collections.shuffle(myArray);
        for(int i = 27; i > 0; i-- ){
        System.out.println("Input the case number that you would like, the numbers are between 1 and 26");
        Scanner input = new Scanner(System.in);

    int casenum = input.nextInt();
    System.out.println(myArray.get(casenum));


    }

}


public static ArrayList array(){
    ArrayList list = new ArrayList();
    list.add(001);
    list.add(1);
    list.add(5);
    list.add(10);
    list.add(25);
    list.add(50);
    list.add(75);
    list.add(100);
    list.add(200);
    list.add(300);
    list.add(400);
    list.add(500);
    list.add(750);
    list.add(1000);
    list.add(5000);
    list.add(10000);
    list.add(25000);
    list.add(50000);
    list.add(75000);
    list.add(100000);
    list.add(200000);
    list.add(300000);
    list.add(400000);
    list.add(500000);
    list.add(750000);
    list.add(1000000);




    return list;

每次调用array()时都要创建新数组。获取代码 有了它,它应该创建一次,在创建时随机播放,然后在每次输入数字时调用相同的数组