0

我正在尝试通过一种方法为 int 生成一个随机数。我知道这是无法做到的,因为 int 是原始类型,并且我得到一个 int cannot be deferenced 错误。它周围有没有我仍然可以使用该方法来获取 int 值的地方?


public int move()
 {
     Random random = new Random();
     int generatedNum = random.nextInt(7 - 1) + 1;

     return generatedNum;
 }

public static void main(String[] args)
{
    int player1 = 0;
    int player2 = 0;

    player1 = player1.move();
    player2 = player2.move();

}
4

3 回答 3

0

你想做什么?这会起作用,但不知道它是否是你想要的......

// made this static so you don't need a class reference
public static int move()
 {
     Random random = new Random();
     int generatedNum = random.nextInt(7 - 1) + 1;

     return generatedNum;
 }

public static void main(String[] args)
{
    int player1 = 0;
    int player2 = 0;

    // Now we just call the static method move to set the ints.
    player1 = move();
    player2 = move();

}
于 2013-04-03T23:28:11.390 回答
0

int 是原始类型,而 Integer 是最终类型,所以不,您将永远无法编写 5.move()。您可以编写一个只包装整数的类,但不能用它进行算术运算。

也许Iterator<Integer>是一个值得实现的接口。

于 2013-04-03T23:30:39.917 回答
0

您可以创建自己的类,类似于 Integer 类(不幸的是,final或者您可以对其进行子类化)。然后将您想要的任何方法添加到该类。当您想要检索值时使用起来有点不方便,但不会太乱。

于 2013-04-03T23:32:54.753 回答