永发信息网

do t = rand.nextInt(flavors.length); while(picked[t]);怎么执行的

答案:2  悬赏:10  手机版
解决时间 2021-01-25 20:42
  • 提问者网友:且恨且铭记
  • 2021-01-24 21:44
public static String[] flavorSet(int n) {
String[] results = new String[n];
boolean[] picked = new boolean[flavors.length];
for(int i=0 ; i < n; i++){
int t;
do
t = rand.nextInt(flavors.length);
while(picked[t]); //do{...} while() 循环 先执行语句,在判断括号里的语句,是真再循环,假就退出循环
results[i] = flavors[t];
picked[t] = true;
}
return results;

}
能详细解释一下怎么执行的吗,主要问题是boolean的值
最佳答案
  • 五星知识达人网友:一把行者刀
  • 2021-01-24 22:30
刚开始初始化的时候picked数组里面的元素的值全为false,所以第一次for循环的时候while循环只走了一次,后面的就一步一步来
全部回答
  • 1楼网友:底特律间谍
  • 2021-01-24 22:46
rand.nextInt(100)表示获取0-99的随机数,?rand.nextInt(100)+1表示1,100的随机数 再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯