从Java中的length和length()开始
1、在沒有IDE自動補齊的情況下,怎樣得到數(shù)組的長度?怎樣得到字符串的長度?
int[] arr = new int[3]; System.out.println(arr.length);//length for array String str = "abc"; System.out.println(str.length());//length() for string為什么數(shù)組有l(wèi)ength屬性而String只有l(wèi)ength()方法呢?
2、為什么Arrays有l(wèi)ength屬性?
首先,數(shù)組是一個對象容器,保存的是一系列單一類型的值;然后數(shù)組被創(chuàng)建,但是長度不能被改變;數(shù)組的長度可以當(dāng)成是 final 實例;因此長度可以被當(dāng)成是數(shù)組的一個屬性;
創(chuàng)建數(shù)組有兩種方式:1)數(shù)組創(chuàng)建表達式;2)數(shù)組初始化創(chuàng)建。在創(chuàng)建的時候,數(shù)組的長度就被指定;
在數(shù)組被創(chuàng)建的時候,就指定了數(shù)組元素的類型,數(shù)組的維度,至少一個維度的長度;
int[][] arr = new int[3][];數(shù)組初始化創(chuàng)建一個數(shù)組,并為它的所有元素提供了初始值。寫成逗號分隔的表達式列表,用大括號{和}括起來。
nt[] arr = {1,2,3};3、為什么沒有定義一個Array類類似String類那樣?
因為一個數(shù)組就是一個對象
Object obj = new int[10];一個數(shù)組可以存儲所有從Object類繼承的對象,如果定義了一個Array類,它仍然需要一個數(shù)組來保存數(shù)據(jù),因此,定義一個Array是多余的,可以通過代碼得到數(shù)組的類型:
int[] arr = new int[3]; System.out.println(arr.getClass());輸出:class [I
class [I 說明了數(shù)組運行時的類型,同時也告訴我們數(shù)組元素的類型是int
4、為什么String類有l(wèi)ength()方法?
String類的后臺數(shù)據(jù)結(jié)構(gòu)是char數(shù)組,String類里面需要定義一個length字段,因為并不是所有應(yīng)用程序都需要。
轉(zhuǎn)載于:https://www.cnblogs.com/lianliang/p/5329051.html
總結(jié)
以上是生活随笔為你收集整理的从Java中的length和length()开始的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑怎么没有u盘启动项 电脑无法在U盘上
- 下一篇: 20145105 《Java程序设计》第