在java中使用多组numbiner作为Random函数

时间:2014-01-30 05:09:29

标签: java minecraft bukkit

好吧我试图使用相同的随机函数来输出不同的数字集。

背景:

我正在为服务器开发一个插件,我需要一个数字生成器才能获胜,

我想要发生的是通过随机数生成器来获胜,然后像这样运行代码,

if ( ten == 0) {
  //ADD STUFF TO PLAYER
return Ten = true;
} else {
  return Ten = false;
}
if (twenty == 0) {
  //ADD STUFF TO PLAYER
  return Twenty = true;
} ECT......

我正在使用这行代码。

Random rnd = new Random();

int ten = rnd.nextInt(10);
int twenty = rnd.nextInt(20);
ect....

但是在第1次调用rnd后,它给出了语法错误,

Syntax error on token ";", { expected after this token

请帮助我,过去2个小时我一直在靠墙打头!

提前感谢您的帮助。

编辑:

public class RewardsExec {


//Registering class as part of the Mojovote Plugin
private Mojovote plugin;
public RewardsExec(Mojovote plugin) {
    this.plugin = plugin;
}

//setting up Random Number Generator
Random rnd = new Random();

ten = rnd.nextInt(10);
twenty = rnd.nextInt(20);
//Odd's Executuion

if (ten = 0) {
    return Ten = true;
} else {
    return Ten = false;
}
    if (twenty == 0 {
            return Twenty = true;
    } else {
            return Twenty = false;
    }
}

2 个答案:

答案 0 :(得分:0)

你需要提供整段代码,因为在你的语法错误的地方,没有看到所有的代码就不可能说。

编辑:

现在添加了代码:

'ten = 0'需要更改为'ten == 0'才能正确进行比较。

你在这一行上缺少')':(它应该在零之后)

if (twenty == 0 {

另外,我无法看到你在哪里声明变量10和20,所以请尝试改为:

int ten = rnd.nextInt(10);
int twenty = rnd.nextInt(20);

最后,这个代码都不在一个方法中,它只是在类文件中。是否应该在构造类时静态调用它?或者当一个方法被调用时?

答案 1 :(得分:0)

首先,您的代码中存在一些错误:

此行会产生语法错误:

if (twenty == 0 {

改变它......

if (twenty == 0) {

这条线没有意义:

if (ten = 0) {
你在那里做了一个任务。使用==或equals()来比较一些东西。

你的算法看起来很奇怪。更好地使用此方法:

public boolean drawNumber(int i) {

    Random rnd = new Random();
    int number = rnd.nextInt(i);

    if (number == 0) {
        return true;
    }

    return false;
}