2012-03-21 18 views
1

非常に長い文字列があり、文字列の最後まで文字単位で読み取る必要があります。 Javaでは文字列の文字による読み込みに関する問題:JAVA

、私はそれを読むには二つの方法が見つかりました:キャラットを使用して

  1. を。
  2. StringReaderを使用しています。

誰も私を助けることができます:

  1. 速い方法ですどちら?
  2. StringReaderを使用して、文字列の最後まで文字を読み取る方法 String?

ありがとうございます。

答えて

3
  1. これを測定してください。真剣に言えば、あなたのハードウェア上のものと私のハードウェア上のものとは異なるかもしれません。しかし、私はそれが1
+0

ありがとうございました。わかった。 – Arpssss

+1

ありがとうございます。しかし、なぜあなたは疑う?何か特別な理由はありますか? – Arpssss

2
  1. ずつがそれを測定し、あなたにそれぞれの文字のUnicodeコードポイントを返しますint read()を含む他のReaderと同じメソッドを持っているので、それは、ちょうどReadercharAt()
  2. を疑いますあなた自身。文字列がメモリにロードされると、有意義/有意差があることはわかりません。
  3. StringReader#read()(RFTD)
+0

@MДΓΓБДLLありがとうございました。わかった。 – Arpssss

2

は、 "非常に長い?" どのくらいです

toCharArray()メソッドを使用して、char配列に文字列を変換し、ループからそれを持っている:

文字列のMyString =「テスト」。

char [] myCharArray = mystring.toCharArray();ここで

+0

これは、OPが尋ねたどちらの質問にも答えません。 –

+1

彼は「文字列の最後まで文字を読む」ことを望んでいます。 –

+0

... 'StringReader'を使用しています。 –

1

はのcharAtメソッドで、あなたが要求したとして行うように設計されたシンプルなクラスです:

public class Test { 

static String tS = "Hello this is a string"; 


public static void main (String args []) { 
//make a blank character that gets replaced each time the for loop runs  
char c;  
    for (int j = 0; j < tS.length(); j++) { 
      //for loop runs up the length of the string, then sets c to the 
      //current character in the string. Printing c just proves the concept. 
     c = tS.charAt(j); 
     System.out.println(c); 
    } 
} 
} 

これのどれもクラスやmainメソッドで実行する必要がないことを覚えておいてください - あなたはそれを行うことができますコード内のどこでも必要な場所に配置できます。

関連する問題