如何使用Eclipse创建在Android中生成随机数的应用,然后在TextView
字段中显示结果?随机数必须在用户选择的范围内。因此,用户将输入范围的最大值和最小值,然后我将输出答案。
答案 0 :(得分:87)
延伸Rahul Gupta所说的话:
您可以使用Java函数int random = Random.nextInt(n)
这将返回范围int
中的随机[0, n-1]
。
即,要使用范围[20, 80]
:
final int random = new Random().nextInt(61) + 20; // [0, 60] + 20 => [20, 80]
概括更多:
final int min = 20;
final int max = 80;
final int random = new Random().nextInt((max - min) + 1) + min;
答案 1 :(得分:13)
Random r = new Random();
int i1 = r.nextInt(45 - 28) + 28;
这给出了一个28(含)和45(不含)之间的随机整数,28,29,...,43,44之一。
答案 2 :(得分:4)
此外,从API级别21开始,这是可能的:
int random = ThreadLocalRandom.current().nextInt(min, max);
答案 3 :(得分:3)
“用户是选择max no和min no的用户?” 这条线是什么意思?
您可以使用java函数int random = Random.nextInt(n)
。这将返回范围[0,n-1]中的随机int。
您可以使用setText()
方法
答案 4 :(得分:1)
所以你需要以下内容:
int random;
int max;
int min;
...在代码中的某个位置放置方法,以便在用户单击提交时从用户获取最小值和最大值,然后在以下代码行中使用它们:
random = Random.nextInt(max-min+1)+min;
这将随机设置为用户选择的最小值和最大值之间的随机数。 然后你会做:
TextView.setText(random.toString());
答案 5 :(得分:1)
private int getRandomNumber(int min,int max) {
return (new Random()).nextInt((max - min) + 1) + min;
}
答案 6 :(得分:1)
您可以使用If Random
。例如,这会生成一个介于75到100之间的随机数。
final int random = new Random().nextInt(26) + 75;
答案 7 :(得分:0)
Android中的随机数生成器 如果您想了解android中的随机数生成器,那么您应该阅读这篇文章直到结束。在这里您可以获取有关Android中随机数生成器的所有信息。 Random Number Generator in Android
您应该在Java文件中使用此代码。
Random r = new Random();
int randomNumber = r.nextInt(100);
tv.setText(String.valueOf(randomNumber));
我希望这个答案对您有所帮助。如果您想阅读有关本文的更多信息,那么您应该阅读本文。 Random Number Generator
答案 8 :(得分:0)
以下代码将帮助您在给定范围内的两个数字之间生成随机数:
private void generateRandomNumbers(int min, int max) {
// min & max will be changed as per your requirement. In my case, I've taken min = 2 & max = 32
int randomNumberCount = 10;
int dif = max - min;
if (dif < (randomNumberCount * 3)) {
dif = (randomNumberCount * 3);
}
int margin = (int) Math.ceil((float) dif / randomNumberCount);
List<Integer> randomNumberList = new ArrayList<>();
Random random = new Random();
for (int i = 0; i < randomNumberCount; i++) {
int range = (margin * i) + min; // 2, 5, 8
int randomNum = random.nextInt(margin);
if (randomNum == 0) {
randomNum = 1;
}
int number = (randomNum + range);
randomNumberList.add(number);
}
Collections.sort(randomNumberList);
Log.i("generateRandomNumbers", "RandomNumberList: " + randomNumberList);
}