2015-07-20 21 views
-1
public void run() {  This line is fine 
    OpenCrate.this.results.put(p, Integer.valueOf(((Integer)OpenCrate.this.results.get(p)).intValue() + 1)); This line is fine 
    for (int i = 0; i < 27; i++) { This line is fine 
     ItemStack it = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)(new Random().nextInt(15) + 1));   This line is fine 
     m = it.getItemMeta();   This line is fine 
     m.setDisplayName(" ");   This line is fine 
     it.setItemMeta(m);    This line is fine 
     inv.setItem(i, it);   This line is fine 
    } 
    List longlist = new ArrayList(); This line is fine 
    String s;      This line is fine 
    int i;       This line is fine 
    for (ItemMeta m = CrateResult.getResults().iterator(); m.hasNext(); This line is fine 
     i < new CrateResult(s).getChance()) *The Error shows in this line* 
    { 
     s = (String)m.next();  This line is fine 
     i = 0; continue;   This line is fine 
     longlist.add(s);   This line is fine 

     i++;      This line is fine 
    } 

我在該符號「<」上得到該錯誤爲無效賦值,這是MC插件。 請幫忙。令牌「<」的語法錯誤無效AssignmentOperator

回答

0

您在for循環末尾丟失了;以及&&運算符。 你必須使它:

for (ItemMeta m = CrateResult.getResults().iterator(); m.hasNext() && 
i < new CrateResult(s).getChance());) { 
    //... 
} 
0

Beause一個for循環的第三部分用於存儲的值(未測試條件)。我懷疑你想要&&就像

for (ItemMeta m = CrateResult.getResults().iterator(); m.hasNext() && 
     i < new CrateResult(s).getChance();) { 
2

你for循環的語法是錯誤的。它應該是for (initialization; condition; assignment),但你在做for (initialization; condition; condition);

如果您有多個條件,可以使用和&&運算符合並它們。

+0

您好Codebender,感謝您的回覆,您剛發佈的第一個代碼修復了它,然後它給了我更多的同一行中的2個錯誤 – Eric

相關問題