2017-05-26 89 views
-6

我製作了一個程序來反轉輸入的字符,並且每次運行它時都有一條錯誤消息。我的錯誤是什麼,這個錯誤信息是什麼意思?!這個程序有什麼問題?可變字符可能未被初始化

import java.util.*; 

/* it's a program reverses entered characters */ 
class rev 
{ 
    public static void main (String[] args) throws java.lang.Exception 
    { 
     Scanner sc=new Scanner(System.in); 
     int i=1,n=0; 
     char[] character; 
     while (i!=100) { 
character[i]=sc.next().charAt(0); 
     n++; 
     if (character[i]=='\n') { 
     break;} 
     i++; 
    } 
    for (i=n;i>=1;i--){ 
     System.out.print(character[i]); 
    } 
    } 
} 

error: variable character might not have been initialized
character[i]=sc.next().charAt(0);
^ error: variable character might not have been initialized System.out.print(character[i]);

+3

首先,不要試圖* *運行的代碼,直到它的編譯。接下來,錯誤消息告訴你*確切地說*錯誤是什麼。你認爲你在初始化'character'變量的地方? –

+0

可能重複[Java:Error:變量可能未被初始化](https://stackoverflow.com/questions/24152351/java-error-variable-might-not-have-been-initialized) –

回答

0

隨着錯誤消息指出,「變量字符可能尚未初始化。」也就是說,你有char []字符,但從來沒有分配過任何東西。嘗試添加:

char [] character = char [100];

當然,100可能不是取決於你希望在讀什麼,你所需要的價值。

+0

告訴他們改變從!=到a <的同時條件 –

相關問題