簡體   English   中英

用字符串的字符逐個讀取字符的問題:JAVA

[英]Issue with Read Character by Character of a String : JAVA

我的字符串很長,我想逐字符讀取字符串,直到字符串結尾。

在Java中,我發現了兩種讀取方式:

  1. 使用CharAt。
  2. 使用StringReader。

有誰能夠幫助我:

  1. 哪種方法更快?
  2. 如何使用StringReader逐字符讀取字符,直到String結束?

提前致謝。

  1. 測量並找出答案! 嚴重的是,與您的硬件相比,我的硬件上的情況可能有所不同。 但是我懷疑charAt()
  2. 它只是一個Reader ,因此它具有與任何其他Reader相同的方法,包括int read() ,它將為您逐個返回每個字符的Unicode代碼點
  1. 自己測量。 一旦將字符串加載到內存中,我看不到有什么有意義的差異。
  2. StringReader#read() (RFTD)

多久?

使用toCharArray()方法將字符串轉換為char數組,並從循環中獲取它:

字符串mystring =“ test”;

char [] myCharArray = mystring.toCharArray();

這是一個設計為根據您的要求使用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);
    }
}
}

請記住,不需要在類或主方法中完成任何操作-您可以在代碼中需要的任何位置進行操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM