目前,我有三组不同的随机整数字符串生成的图像。 str2和str3工作正常,但由于某些原因,当我使用rnd.nextInt(1)时,它只返回0.不是0和1,只有0.我对它进行了数百次的采样,每次它只是0。再次,其他两个字符串按预期随机返回。但是,如果我无法解决这个问题,我的应用程序将非常无聊。
我做错了什么或有没有更好的方法随机返回0和1?感谢所有帮助。
String str1 = "img_" + rnd.nextInt(1);
String str2 = "img_" + rnd.nextInt(2);
String str3 = "img_" + rnd.nextInt(3);
if (levelCounter <= 10) {imgView1.setImageDrawable(getResources().getDrawable(getResourceID(str1, "drawable", getApplicationContext())));
imgView1.setScaleType(ImageView.ScaleType.CENTER);
imgView1.setVisibility(View.VISIBLE);
} else if (levelCounter <= 18) {imgView1.setImageDrawable(getResources().getDrawable(getResourceID(str2, "drawable", getApplicationContext())));
imgView1.setScaleType(ImageView.ScaleType.CENTER);
imgView1.setVisibility(View.VISIBLE);
} else if (levelCounter >= 19) {imgView1.setImageDrawable(getResources().getDrawable(getResourceID(str3, "drawable", getApplicationContext())));
imgView1.setScaleType(ImageView.ScaleType.CENTER);
imgView1.setVisibility(View.VISIBLE);
} else {
Log.e(LOGCAT, "Counter Error: Unknown Level");
}
答案 0 :(得分:0)
nextInt(n)
返回0到n-1之间的随机数。如果您想要随机0或1,请使用nextInt(2)
。