2012-06-07 12 views
5

私はJavaでthisを複製しようとしています。クリックを保存するために、文字配列['F', 'R', 'A', 'N', 'K', NULL, 'k', 'e', 'f', 'w']をヌル終端文字列に変換すると、そこにヌルポインタがあるので、'K'の後に停止します。しかし、私のJavaの試みは機能していないようです。nullポインタで途中でchar [] - >文字列変換を終了します

public class TerminatingStrings{ 
    public static void main(String[] args){ 
     char[] broken = new char[3]; 
     broken[0] = 'a'; 
     broken[1] = '\u0000'; 
     broken[2] = 'c'; 
     String s = new String(broken); 
     System.out.println(s); 
    } 
} 

acと表示されます。これ以外にも、(1)broken[1]を初期化せず、(2)明示的にヌルに設定しようとしました。

Javaではこれはまったく可能ですか?それとも、私の物事の理解は間違っていますか?

答えて

6

Cとは異なり、JavaではNULで終了する文字列は使用されません。ビヘイビアを取得するには、コードで最初の\0の位置をchar配列に配置し、文字列を構築するときにコードを停止する必要があります。

+1

。ヌル!= NUL –

関連する問題