Java 基本length和length()

length和length()到底有什麼區別java

length是屬性,而length()是方法 爲何要這麼回答 下面我來羅列一些列子來講明:數組

你們都知道咱們在定義數組時:數據結構

int []arr = new int [3];
int [] arr2 = {1,2,3};

上面定義了定義了兩個一維數組(數組是容器,既然是容器了length就該是屬性,不知道我這麼說各位是否理解),下面羅列下二維數組:code

int [][]arr = new int [3][];
int [][]arr2 = {{},{}};
System.out.println(arr.length);
System.out.println(arr2.length);
3
2

我爲什麼要羅列下二維數組,由於我想強調:數組在定義時就肯定了空間大小。無論是幾維。二維數組 arr[1] 這裏存儲的是:一個一維數組的地址(一維數組的首地址)。 因此這也說明length是個屬性,(數組剛必定義就肯定了該屬性的大小)。io

/*class

補個小插曲:爲何在定義二維數組時,不用指明二維的第二個維度容器

由於二維數組存儲的是一維數組的地址,定義二維數組只要說明,你要定義幾個二維數組就好了方法

*/im


下面須要解釋下String類型,序列的長度爲何是length().數據

String 底層數據結構是 char[],這樣的一個一維字符數組,所以String擁有的就是length()這個方法,而不是length這個屬性。就像Collection這個集合。

//以上是我的看法,若有錯誤請指正。

相關文章
相關標籤/搜索