从Main获取随机函数

use*_*009 3 java program-entry-point function

public static GetRandomFunc() {
    switch((int)(Math.random()*NUM_FUNCTIONS)  {
        case 0:
            functionA();
            break;
        case 1:
            functionB();
            break;
        case 2:
            functionC();
            break;
          //  ...
    }
}
Run Code Online (Sandbox Code Playgroud)

我想在main中随机调用GetRandomFunc(),直到每个函数被调用一次然后结束.如何确保只调用一次函数,如果调用了所有函数,则打印出System.out.println("全部完成")

Mas*_*_mj 5

创建一个包含0,1和2的列表.对其进行混洗并迭代它以按随机顺序调用每个函数一次.

List<Integer> integers = Arrays.asList(0,1,2);
Collections.shuffle(integers)
for (Integer i: integers){
   GetRandomFunc(i)
}
Run Code Online (Sandbox Code Playgroud)

你的功能将是

public static GetRandomFunc(int index) {
    switch(index)  {
        case 0:
            functionA();
            break;
        case 1:
            functionB();
            break;
        case 2:
            functionC();
            break;
          //  ...
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 看来你导入了java.awt.*而java认为你使用的是java.awt.List.请使用java.util.List来支持通用参数 (2认同)