Wal*_*lid -2 java string random
我有这种方法可以生成随机问题,我希望能够生成一次并且不超过一次的每个问题.我怎么能这样做?
这是到目前为止的代码:
package boss;
import java.util.Random;
import javax.swing.JFrame;
public class Boss {
public static void main(String[] args) {
LoginWindow window = new LoginWindow();
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
window.setVisible(true);
}
public String getQuestions() {
String [] question = new String[30];
question[0] = "hello";
question[1] ="yo";
question[2] ="b";
question[3] ="ha";
//Generating random questions
Random r = new Random();
int i=r.nextInt(4);
String quest=question[i];
return quest;
}
}
Run Code Online (Sandbox Code Playgroud)
您没有在示例中生成问题 - 您从存储在数组中的固定集中选择它们.听起来你只是想要对数组进行洗牌,然后迭代它的一部分直到你看到所需数量的问题.所以 - 建议你改变问题,然后迭代乱序数组,或者对一组索引0..n进行混洗,并迭代原始问题列表中的那些.
有很多改组的方法,也许最简单的是对输入数据进行单次传递,将每个元素与其他随机选择的元素进行交换.