这有什么问题?在eclipse中获得相同的错误

时间:2014-07-19 20:14:46

标签: java

嘿,我在同一个地方找到相同的2个字的错误。我不知道我做错了什么,但我希望你们能找到错误。基本上我写java很糟糕,但我仍然想创建一个程序,所以我找到了一个基本上我需要的java程序,现在我正在编辑它,以便在Eclipse中使用我的规范。

错误:有两个" **"在每一方面,所有人都有错误消息"重复本地变量"

public String sentenceLyrics()
  {
    ArrayList<String> toBeUsed = new ArrayList();
    for (int a = 0; a < this.slyrics.length; a++) {
      if (this.blyrics[a]) {
        toBeUsed.add(this.slyrics[a]);
      }
    }
    int numofdouble;
    int numofsingle;
    int **numofdouble**; 
    if (toBeUsed.size() == 1)
    {
      int **numofsingle** = 1;
      numofdouble = 0;
    }
    else if (toBeUsed.size() > 1)
    {
      int **numofdouble** = rand.nextInt(toBeUsed.size() / 2);
      int **numofsingle** = toBeUsed.size() - numofdouble * 2;
      System.out.println(numofdouble + " " + numofsingle);

4 个答案:

答案 0 :(得分:5)

您有相同名称的变量,就像错误消息所示。

虽然无法知道 intent 是什么,但您是否只想声明一次并在其余代码中使用它们?如果是这样,请在第一个之后删除声明,例如,删除前导int类型,然后只需设置它们的值。

答案 1 :(得分:0)

对于第一组**,除了你再次声明变量之外,没有什么可说的。那里的修复将删除该行。

对于其他三个错误,问题是当你说[type] [变量名]时,Java认为你正在声明一个新变量,当你想要做的就是给你一个新值现有变量。要解决此问题,只需删除int标签,然后修复错误。

答案 2 :(得分:0)

您声明相同的变量名称超过两次。在Java中,如果你写这个:

int numofsingle

然后你宣布这个变量。您可以通过执行以下操作为变量赋值:

numofsingle = 1

注意开始时缺少int

您正在做的是声明一个变量并将同一行代码的值多次分配给同一个命名变量。只需从标有**

的行中删除int即可

答案 3 :(得分:0)

我想这是你想做的事情:

public String sentenceLyrics() {
    ArrayList<String> toBeUsed = new ArrayList();
    for (int a = 0; a < this.slyrics.length; a++) {
      if (this.blyrics[a]) {
        toBeUsed.add(this.slyrics[a]);
      }
    }
    int numofdouble = 0;
    int numofsingle = 0;
    if (toBeUsed.size() == 1)
    {
      numofsingle = 1;
      numofdouble = 0;
    }
    else if (toBeUsed.size() > 1)
    {
      numofdouble = rand.nextInt(toBeUsed.size() / 2);
      numofsingle = toBeUsed.size() - numofdouble * 2;
    }
    System.out.println(numofdouble + " " + numofsingle);
}

删除了变量重复,添加了一些花括号,并添加了一些变量初始化。