2011-06-06 25 views
3
public class Help 
{ 
    public static void main (String[] args) 
    { 
     if (index = 1) 
     { 
      String greeting = "hello"; 
     } 
     else 
     { 
      String greeting = "goodbye"; 
     } 
    } 

    callAMethod(greeting); 
} 

當我在if語句中定義字符串時,出現'找不到符號'錯誤。我怎樣才能解決這個問題,仍然能夠根據上述條件創建一個字符串?如何使用'if'語句中定義的變量?

+1

哪種語言? – 2011-06-06 14:56:02

+0

它似乎是Java。 – 2011-06-06 14:57:16

+1

索引從哪裏來?它沒有被定義在任何地方。 – Rob 2011-06-06 14:59:12

回答

1

聲明if塊之外的變量。在if語句之前

右鍵,你可以說String greeting = "";

然後,ifelse塊裏面,你說greeting = "hello";等。

所以你已經分開聲明變量賦值給它。

2

聲明它的範圍之外 -

String greeting = "goodbye"; 
if(index == 1) 
{ 
    greeting = "hello"; 
} 

callAMethod(greeting); 
4

如何

public static void main (String[] args){ 
    String greeting; 
    if(index == 1){ 
     greeting = "hello"; 
    }else{ 
     greeting = "goodbye"; 
    } 
} 

callAMethod(greeting); 
} 
+1

AHEM。你想'索引== 1'。 – Gabe 2011-06-06 15:00:33

+0

對!對於輸入錯誤 – hithwen 2011-06-08 07:23:39

1

您可以定義語句之前的問候變量:

String greeting; 

if (index == 1) { 
    greeting = "hello"; 
} else { 
    greeting = "bye"; 
} 

System.out.println(greeting); 
+0

我知道這不是在原始問題,但如果它是一個字符串數組,我怎麼能這樣做,如果我不提前知道數組的維度? – Jayden 2011-06-06 15:06:03

+0

您可以像我爲該字符串所做的那樣定義一個int(稱爲計數器)。然後,在if/else或循環之後,可以執行類似於String [] array = new String [counter] – user83643 2011-06-06 18:37:11