猿问

如何在java中的arraylist中添加异常

我需要添加例外,以便无法再次生成已经生成的数字。


所以为了生成一个随机数,我试试这个。我制作了两个数组列表,每个数组列表包含 1 到 14 之间的 14 个数字:


    ArrayList<Integer> Numbers1 = new ArrayList<Integer>();

    ArrayList<Integer> Numbers2 = new ArrayList<Integer>();

    Numbers1.add(0);

    Numbers1.add(1);

    Numbers1.add(2);

    Numbers1.add(3);

    Numbers1.add(4);

    Numbers1.add(5);

    Numbers1.add(6);

    Numbers1.add(7);

    Numbers1.add(8);

    Numbers1.add(9);

    Numbers1.add(10);

    Numbers1.add(11);

    Numbers1.add(12);

    Numbers1.add(13);

    Numbers1.add(14);

    Numbers2.add(0);

    Numbers2.add(1);

    Numbers2.add(2);

    Numbers2.add(3);

    Numbers2.add(4);

    Numbers2.add(5);

    Numbers2.add(6);

    Numbers2.add(7);

    Numbers2.add(8);

    Numbers2.add(9);

    Numbers2.add(10);

    Numbers2.add(11);

    Numbers2.add(12);

    Numbers2.add(13);

    Numbers2.add(14);

然后我制作一个随机数,从每个数组列表中取 1 个数字


   Random Calc = new Random();

    Num1 = Numbers1.get(Calc.nextInt(Numbers1.size()));

    Num2 = Numbers2.get(Calc.nextInt(Numbers2.size()));

然后我制作一个整数,将随机选择的两个随机数相乘


    FinalInt = Num1 * Num2;

然后我有一个包含 200 个字符串的 HashMap:


 HashMap<Integer, String> points = new HashMap<Integer, String>();

    points.put(1, "String1");

    points.put(2, "String2");

    points.put(3, "String3");

    points.put(4, "String4");

    points.put(5, "String5");

    //And so on until 200 

    TextView textview1.setText(points.get(FinalInt))

如果 FinalInt 生成数字 1,它会将 textview1 设置为“String1”。所以我需要如果 FinalInt 再次为 1 来重做 num1 * num2 所以它不是 1。


慕哥9229398
浏览 114回答 1
1回答

暮色呼如

您可以用于Set<Integer>存储数字。这将确保您始终拥有“唯一”号码。现在..if(Set.add(x))如果此行给出错误,您可以撤消更改并再次生成数字
随时随地看视频慕课网APP

相关分类

Java
我要回答