2017-05-26 20 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:エラー:変数が初期化されていない可能性があります]の重複している可能性があります(https://stackoverflow.com/questions/24152351/java-error-variable-might-not-have-been-initialized) –

答えて

0

「変数の文字が初期化されていない可能性があります。」と言いますつまり、あなたはchar []文字を持っていますが、何も割り当てられませんでした。以下を追加してください:

char [] character = char [100];それがコンパイルされるまでもちろん

、100はあなたが読むことを期待するものに依存し、あなたが必要とする値、ではないかもしれません。

+0

while =〜から< –

関連する問題