Java 我应该使用charAt还是toCharArray?

Java 我应该使用charAt还是toCharArray?,java,string,Java,String,以下哪个选项被认为是循环使用字符串的好方法? 我们应该使用charAt还是转换成char数组?我正在寻找所有方面的答案,包括性能和使用的空间 public static void doChose (String str) { for (int i = 0; i < str.length(); i++) { System.out.println(str.charAt(i)); } // vs char

以下哪个选项被认为是循环使用
字符串的好方法?
我们应该使用
charAt
还是转换成char数组?我正在寻找所有方面的答案,包括性能和使用的空间

public static void doChose (String str) {

        for (int i = 0; i < str.length(); i++) {
            System.out.println(str.charAt(i));
        }

        // vs

       char[] chars = str.toCharArray();
       for (char c : chars) {
           System.out.println(c);
       }

    }
publicstaticvoiddocose(stringstr){
对于(int i=0;i
我认为这是个人的偏好:)但循环使用charAt(I)将是最常见的处理方法。这个问题包括:


如果仅用于对字符进行迭代,请使用
charAt(int)
(或者理想情况下使用
codepoint(int)
)。实际问题的可能重复是“你想做什么?”…对于字符串中的不同字符,您可能会做其他事情。我观察到,在实际执行charAt和数组索引后,这两者之间的主要区别在于您有(如果不是由JITC内联的话)使用charAt对每个字符进行方法调用,使用数组索引对每个字符串只进行一次方法调用。除非您在每个字符串中处理大量字符,或者性能非常关键,否则为了简单起见,我会使用charAt。ToCharray的性能比charAt好-