2016-05-24 8 views
0

こんにちは私はJavaを使い慣れておらず、文字列を個々の文字に分割してJavaFXに送信するプロジェクトに取り組んでいます。私は最良の方法はこれのための配列を作成することです想像してください。配列の長さを文字列のサイズに設定してJavaの文字列から文字を取り込む方法

文字列の長さ以上のインデックスを持つように配列を作成したいのですが、エラーが表示されます。私はその後、特定のポイントから配列の最後まで文字列の一部を送りたいと思っています。私は、個々の文字をJavaFXのラベルやボックスに送ることができると思います。

public static void main(String[]args) { 
    String gamePhrase = "Some Phrase here"; 
    String guessPhrase = gamePhrase.replaceAll("[a-zA-Z0-9]", "*"); 

    System.out.println(guessPhrase); 

    System.out.println(arraytest); 

    char[] array2 =new char[gamePhrase.length()]; 

    guessPhrase.getChars (1,gamePhrase.length(),array2,0); 

    System.out.println(array2);} 
} 

ここで私は間違っていますか?なぜ私はstring.length()機能を使用しないのですか? 誰かが提案できるより良い方法がありますか?私は配列がすべての文字を含むわけではないので、toArrayを使いたくない。

ご協力いただければ幸いです。

+0

あなたがエラーを取得しない場合、あなたはどのエラーが出るのですか? あなたはどこにでもarraytestを割り当てていませんか? –

+0

guessPhrase.getChars(1、gamePhrase.length()、array2,0); 'インデックス1から開始しています。インデックス外の例外が発生していると思われますか? – matt

+0

私は最初の 'arraytest'に気づいていなかったが、実行したように見えた。 – mineshmshah

答えて

0

私は、このコードはあなたを助けることを願っています。、

String str = "hello"; 
    char[] ch = new char[str.length()]; 
    ch = str.toCharArray(); 
    for(int i=0;i<ch.length;i++){ 
    //this will print all the char 
    System.out.println("ch len == "+ ch[i]); 
    //to select specific char 
    if(ch[i] == 'l'){ 
     System.out.println("selected chars == "+ ch[i]); 
    } 
    } 
+0

'char [] ch =新しいchar [str.length()];'は何もしません。 – matt

2

文字列.toCharArray()を使用できます。

char[] array2=gamePhrase.toCharArray() 

次に、すべての文字列に対してgetCharsと同じになります。

関連する問題