我对颤振很陌生。 我正在开发一个测验应用程序并尝试让每个测验都有五个问题 我遇到了一些问题:
1- 我不想在同一个测验中重复同一个问题。[我的测验也每次都从第一个问题开始]。
2- 每次达到我的第 10 个问题 [在数组中] 9 我的应用程序崩溃。
注意:我使用 JSON 文件来存储我的问题。
int j = 1;
int i = 1;
var random_array;
genrandomarray() {
var distinctIds = [];
var rand = new Random();
for (int i = 1;;) {
distinctIds.add(rand.nextInt(10));
random_array = distinctIds.toSet().toList();
if (random_array.length < 10) {
continue;
} else {
break;
}
}
print(random_array);
}
setState(() {
if (j < 5) {
i = random_array[j];
j++;
} else {
Navigator.of(context).pushReplacement(MaterialPageRoute(
builder: (context) => resultpage(marks: marks),
));
}
disableAnswer = false;
});
答案 0 :(得分:0)
genrandomarray() {
var rand = new Random();
让它在问题之间随机选择
var distinctIds = [i = rand.nextInt(10) + 1];
for (int i = 0;;) {
达到 10 题时不会崩溃
distinctIds.add(rand.nextInt(10) + 1);
random_array = distinctIds.toSet().toList();
if (random_array.length < 10) {
continue;
} else {
break;
}
}
print(random_array);
}