Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー

どこがエラーか確認してください…

プログラムを作ったのですが、さまざまなエラーが出てしまいます。 与えた引数を数字と文字にわけるというプログラムです。 public class Selection { private static final char[] nch = { '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' };//0から9までの数字をchar型配列要素として定義 public static String numbersonly(String inputstr) { StringBuffer bfn = new StringBuffer(); for (int i = 0 ; i < inputstr.length(); i++) { for (int j = 0;j < nch.length() ; j++) { if(inputstr.charAt(i) == nch[j]) bfn.append(inputstr.substring(i)); //bfnにinsputstrのi番目の文字を付け足す } } return; bfn.toString(); //bfnをstring型に変えて戻り値 } //numbersonlyメソッドの場合と同様に以下も補う public static String lettersonly(String inputstr) { StringBuffer bfn =new StringBuffer(); boolean let; for (int i = 0; i < inputstr.length(); i++) { let = true; for(int j = 0; j < nch.length(); j++) { if(inputstr.charAt(i) == nch[j]) let =false; } if (let)bfn.append(inputstr.substring(i)); } return;bfn.toString(); } } はじめのchar型配列要素として定義するところでシンボルを解決できません、となっているので、そのほかのnchを使う部分(lengthメソッド、戻り値)にも影響が出ているのか、jのlengthメソッドもどちらともシンボル解決できず、それぞれreturnでは戻り値がありません、となります。

質問者が選んだベストアンサー

  • ベストアンサー
  • liar_adan
  • ベストアンサー率48% (730/1515)
回答No.2

これをコピー・ペーストしてコンパイルしてみました。 3つほどまちがいがありました。 (1) > private static final char[] nch = { >'0' '1' '2' '3' '4' '5' '6' '7' '8' '9' >};//0から9までの数字をchar型配列要素として定義 のところ、要素の間に,(カンマ)が入っていない。 >'0', '1', '2', '3', '4' ,'5' ,'6' ,'7' ,'8', '9' のようにする。 (2)2箇所あるreturnのところで、 returnと返す値の間に;(セミコロン)が入っている。 取り除けばよい。 (3)2回出てくるnch.length()のところ、 配列の長さを得るlengthはメソッドではなくフィールドである。 つまり、()を削除してnch.lengthとして使えばよい。 (これはありがちなエラー) 内容については検討していませんが、 とりあえず以上のことをすればコンパイル可能になります。

noname#8616
質問者

お礼

ありがとうございました。 解決しました!

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • alphion
  • ベストアンサー率19% (27/136)
回答No.1

>private static final char[] nch = { >'0' '1' '2' '3' '4' '5' '6' '7' '8' '9' >};//0から9までの数字をchar型配列要素として定義 要素が“,”で区切られていない。 >return;bfn.toString(); おそらく、 return(bfn.toString()); としたいのでは? >nch.length() nch.length () いらない。

noname#8616
質問者

お礼

解決しました。ありがとうございました。

すると、全ての回答が全文表示されます。

関連するQ&A