我应该在r.nextInt()使用什么演员表?

时间:2014-04-24 21:04:17

标签: java android

我尝试构建一个程序,在该程序中,您可以给出最大值和最小值,以便在它们之间生成随机数。 Eclipse说我必须向r.nextInt()添加一个强制转换。我做了但我不知道在这里使用什么而不是对象:

int result = ((Object) r).nextInt(max - min + 1) + min; 

(已经由Eclipse添加了强制转换)。谢谢你的帮助。

这是重要的代码。

public void ButtonKlick (View view) {
    int max;
    EditText maxText = (EditText)findViewById(R.id.maximum);
    if (maxText.getText().toString().length() == 0) {
        return;
    }
    max = Integer.parseInt(maxText.getText().toString());

    int min;
    EditText minText = (EditText)findViewById(R.id.minimum);
    if (minText.getText().toString().length() == 0) {
        return;
    }
    min = Integer.parseInt(minText.getText().toString());

    Random r = new Random();
    int result = ((Object) r).nextInt(max - min + 1) + min;

    EditText resultText = (EditText)findViewById(R.id.et_result);
    resultText.setText(String.valueOf(result));
}

3 个答案:

答案 0 :(得分:2)

尝试更改

Random r = new Random();
int result = ((Object) r).nextInt(max - min + 1) + min;

Random r = new Random();
int result = r.nextInt(max - min + 1) + min;

R.nextInt()返回一个整数

在页面顶部(上面的类定义但在包定义之下),您应该看到一些导入。你想确保它在那里:

package com.example.yourproject;

import java.util.Random;
...

public class yourclass {
...

答案 1 :(得分:1)

你根本不需要施放它。您将从随机数生成器获取下一个整数,并将int设置为该值。它应该只是

int result = r.nextInt(max - (min + 1)) + min;

这会给你一个最大和最小+ 1之间的随机数

答案 2 :(得分:0)

您必须定义自己的名为Random的类。不要那样做。重命名它。然后r.nextInt()将在没有演员的情况下工作。