2017-04-06 11 views
0

私は、分割文字列にのStringクラスのsplitメソッド

public void run() { 

String input="Sasi|maran|rishabh"; 

String arr[]=input.split("|"); 
    for (int i = 0; i < arr.length; i++) { 
     try{ 

      System.out.println(arr[i]); 

      Thread.sleep(1000); 

     }catch(Exception e){ 
      e.printStackTrace(); 
     } 

    } 

} 

出力期待1つのJavaスレッドを書かれている:

sasi 
rishabh 
maran 

しかし、私は取得していますどのような出力:

S 
a 
s 
i 
| 
m 
a 
r 
a 
n 
| 
r 
i 
s 
h 
a 
b 
h 
+2

を使用| '正規表現で意味... –

+0

両方の回答以下では、OPが "maran"の前に印刷する "rishabh"がarr []を並べ替えていないときにOPがどのようにして印刷したいのかを説明していないようです。 – shash678

答えて

0

String#splitメソッドは引数として正規表現をとります。 |はメタ文字で、正規表現では特別な意味を持っています。ただそれをエスケープする。

String arr[]=input.split("\\|"); 
+0

ありがとうございましたANS – rishabhkeshari123

0

あなたがする必要がパイプのようにエスケープ:String[] arr = input.split("\\|"); とdo System.out.print(element);の代わりにSystem.out.println(arr[i]);

+0

ありがとうございました – rishabhkeshari123

0

私は*あなたは非常に慎重に `String.split` *のドキュメントを読むことをお勧めし、どのような`検討し、以下のコード

input.split("\\|") 
+0

ありがとうzubair nabi – rishabhkeshari123

関連する問題