给定一个整数234,我将如何使用一个随机对象来获取这个数字,并在没有使它成为字符串的情况下只添加一个随机数字。因此,在这种情况下,目标是返回一个4位数的数字,最后一个数字是随机的。例如,下一个数字可能是2347。然后我想取这个数字,并对5位数做同样的事情,例如23471。我知道我可以把数字乘以10来增加1,但这不是随机的。对于随机类,我知道的唯一方法是nextInt(int )和nextDouble()。
Random generator = new Random();
int gameNum = 234;
public static int UpdateGameNum(int gameNum, Random)
{发布于 2017-11-01 16:47:43
gameNum = gameNum * 10 + generator.nextInt(10)会这么做的。
( +的第二个参数是包含0到9的随机数)。
如果您想支持负gameNum,那么使用更复杂的
gameNum = (gameNum >= 0 ? 1 : -1) * (Math.abs(gameNum) * 10 + generator.nextInt(10));它有效地去除了符号,执行随机数的级联,然后重新引入。
发布于 2017-11-01 17:03:03
不需要将随机实例作为参数传递给updateGameNum()
只需将getNum与10相乘,然后从(0-9)中随机选取一个数字。
Random generator = new Random();
int gameNum = 234;
public static int UpdateGameNum(int gameNum)
{
return ( gameNum *10 ) + generator.nextInt(10);
}https://stackoverflow.com/questions/47059717
复制相似问题