相关疑难解决方法(0)

迭代字符串中所有字符的最快方法

在Java中,迭代字符串中所有字符的最快方法是什么,这:

String str = "a really, really long string";
for (int i = 0, n = str.length(); i < n; i++) {
    char c = str.charAt(i);
}
Run Code Online (Sandbox Code Playgroud)

或这个:

char[] chars = str.toCharArray();
for (int i = 0, n = chars.length; i < n; i++) {
    char c = chars[i];
}
Run Code Online (Sandbox Code Playgroud)

编辑:

如果重复调用的成本是什么,我想知道的是charAt长迭代期间方法最终是要么不是比执行一个调用的成本小于或大于toCharArray开头,然后直接在迭代期间访问阵列.

如果有人能够为不同的字符串长度提供强大的基准测试,考虑到JIT预热时间,JVM启动时间等等,而不仅仅是两次调用之间的差异,那就太棒了System.currentTimeMillis().

java string iteration performance char

153
推荐指数
4
解决办法
23万
查看次数

String.codePointAt究竟做了什么?

最近我遇到了Java中的StringPointAt方法.我还发现了一些其他的代码点方法:codePointBefore,codePointCount等他们肯定有事情做Unicode的,但我不明白.

现在我想知道何时以及如何使用codePointAt和类似的方法.

java string unicode codepoint

34
推荐指数
2
解决办法
2万
查看次数

标签 统计

java ×2

string ×2

char ×1

codepoint ×1

iteration ×1

performance ×1

unicode ×1