我有一个最多包含100000个字符的大字符串。为了从字符串中读取字符,我不使用string.charAt[index]
,而是使用string.toCharArray()
方法将该字符串转换为字符数组,并且现在我正在使用charArray[index]
。这比使用string.charAt[index]
方法要快得多。但是我想知道是否有其他比string.toCharArray()
方法更快的方法?
我有一个最多包含100000个字符的大字符串。为了从字符串中读取字符,我不使用string.charAt[index]
,而是使用string.toCharArray()
方法将该字符串转换为字符数组,并且现在我正在使用charArray[index]
。这比使用string.charAt[index]
方法要快得多。但是我想知道是否有其他比string.toCharArray()
方法更快的方法?
我不认为有更快的方法。但请纠正我!
一个String实例由一个char数组支持。charAt()执行一些索引检查,这可能是它比使用toCharArray()返回的数组慢的原因。toCharArray()只是对支持数组执行System.arraycopy()。
string.charAt[index]
时,每次都会创建一个char[string.length()]
吗?如果是的话,那么这可能是其性能较差的原因。 - ravi