关于JAVA中对字符串与数组求长度的问题


  我在学习中发现在求数组或者字符串的长度的时候,用到length的时候,有时候是length,有时候是length(),很是奇怪,于是上API查了一下,发现一些小细节。

  首先看看这段代码

 1 public class TS{
 2     public static String arr[] = {"s","a","s",};
 3     public static String str = "sas";
 4     public static void main(String [] args){
 5         System.out.println(arr.length);
 6         //System.out.println(arr.length());
 7         //System.out.println(str.length);
 8         System.out.println(str.length());
 9     }
10 
11 } 

  这是非注释的打印是正确的代码,结果为;

  但当把代码改为

public class TS{
    public static String arr[] = {"s","a","s",};
    public static String str = "sas";
    public static void main(String [] args){
        //System.out.println(arr.length);
        System.out.println(arr.length());
        System.out.println(str.length);
        //System.out.println(str.length());
    }

} 

  这时候就出了问题,报错为.

  这就可以发现,数组对应是length,字符串对应是length()。

  那么这到底是怎么回事呢,查询API可知,即length()是字符串的一个方法,而length则是数组的属性。

  这个小细节平常需要格外注意,以减少debug的工作量。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM