大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) Java技術(shù)知識分享,Java如何求數(shù)組的長度

Java技術(shù)知識分享,Java如何求數(shù)組的長度

更新時間:2020-06-01 16:38:21 來源:動力節(jié)點 瀏覽2985次

限時 1 秒鐘給出答案,來來來,聽我口令:“Java 如何獲取數(shù)組和字符串的長度?length 還是 length()?”

Java技術(shù)知識分享,Java如何求數(shù)組的長度

到底該用 length 還是 length(),說真的,我當(dāng)時真有點吃不準(zhǔn),懷念 IDE 的代碼自動提醒功能啊!

int[] arr = new int[4]; System.out.println(arr.length);// 獲取數(shù)組的長度 String str = "沉默王二"; System.out.println(str.length());// 獲取字符串的長度 

// new int[] arr = new int[4]; arr[0] = 0; arr[1] = 1; arr[2] = 2; arr[3] = 3; // {} int [] arr1 = {0, 1, 2, 3};?
Object arr2 = new int[4];?
Object arr2 = new int[4]; System.out.println(arr2.getClass()); Object arr3 = new String[4]; System.out.println(arr3.getClass());?
class [I class [Ljava.lang.String;?
public final class String? ?implements java.io.Serializable, Comparable, CharSequence {? ?/** The value is used for character storage. */? ?private final char value[]; }?
? ?/**? ?* Returns the length of this string.? ?* The length is equal to the number of Unicode? ?* code units in the string.? ?*/? ?public int length() {? ? ?return value.length;? ?}?

最后提醒一點:萬丈高樓平地起。一棟樓能蓋多高,一座大橋能造多長,重要的是它們的地基。同樣對于我們技術(shù)人員來說,基礎(chǔ)知識越扎實,走得就會越遠。

總結(jié)一下,Java 獲取數(shù)組長度的時候用 length,獲取字符串長度的時候用的是 length(),他們之間的區(qū)別我相信大家已經(jīng)搞清楚了。

length() 方法返回的正是字符數(shù)組 value 的長度(length),value 本身是 private 的,因此很有必要為 String 類提供一個 public 級別的方法來供外部訪問字符的長度。

那為什么字符串 String 類會有 length() 方法呢?來看一下源碼就明白了。

但這樣做真的有必要嗎?為數(shù)組單獨定義一個類,是不是有點畫蛇添足的意味。那既然數(shù)組沒必要定義成一個類,也就沒有必要再定義一個 length() 方法來獲取數(shù)組的長度了,直接用 length 這個字段就可以了,不是嗎?

一個合理的解釋是 Java 將其隱藏了。假如真的存在一個 Array.java,我們也可以假想它真實的樣子,它必須要定義一個容器來存放數(shù)組的元素,就像 String 類那樣。

那為什么數(shù)組不單獨定義一個類來表示呢?就像字符串 String 類那樣呢?

class [I 表示一個“int 類型數(shù)組”在運行時的對象類型信息;class [Ljava.lang.String; 表示一個“字符串類型數(shù)組”在運行時的對象類型信息。

輸出的結(jié)果會是什么呢?

這就意味著數(shù)組繼承了超類 java.lang.Object 的所有成員方法和字段。事實上,的確如此,我們可以通過以下代碼來獲取數(shù)組的類型信息 Class。

由于數(shù)組也是對象,所以以下代碼是合法的。

但不管用哪種方法,數(shù)組的長度是可以明確知道的。并且不會再變長或者變短(學(xué)不了孫悟空的金箍棒)。

創(chuàng)建數(shù)組的方法有兩種,這個應(yīng)該大家都知道了。一種是通過 new 關(guān)鍵字創(chuàng)建指定長度后再賦值,另外一種是通過 {} 直接進行初始化。

首先呢,我們必須要明白:數(shù)組是一個容器,當(dāng)它被創(chuàng)建后,不僅元素的類型是確定的,元素的個數(shù)也是確定的。換句話說,數(shù)組的長度是確定的,不可能再變長或者變短。因此,數(shù)組可以使用一個字段(length)來表示長度。

按理說,數(shù)組和字符串都是對象,訪問長度都用 length() 方法就好了。為什么數(shù)組偏偏劍走偏鋒用的 length 字段呢?

Java技術(shù)知識分享,Java如何求數(shù)組的長度

以上就是動力節(jié)點java培訓(xùn)機構(gòu)的小編針對“Java技術(shù)知識分享,Java如何求數(shù)組的長度”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 久久在线精品 | 综合久久伊人 | 国产日韩网站 | 欧美成人h版影片在线观看 欧美成人h精品网站 | 在线看片亚洲 | 欧美精品免费在线 | 一本色道久久综合一区 | 国产精品99在线观看 | 精品久久国产 | 福利国产 | 国产真实偷人视频在线播放 | 一 级做人爱全视频在线看 一a级毛片 | 人人做人人爽久久久精品 | 性夜黄a爽爽免费视频国产 性夜影院爽黄a爽免费看网站 | 草草在线播放 | 六月婷婷中文字幕 | 嘿咻嘿咻免费区在线观看吃奶 | 福利色姬网站视频入口 | 日本免费不卡一区 | 精品新一区二区三区四区 | 中文字幕人成乱码第一页 | 欧美综合精品一区二区三区 | 国产一区二区三区亚洲欧美 | 美女狠狠干 | 久久综合热88 | 久久毛片免费看一区二区三区 | 成人国产精品毛片 | 欧美一级录像 | 久久国产亚洲高清观看5388 | 亚洲日韩中文字幕 | 国产99re| 99热这里只有精品9 99热这里只有精品99 | 在线免费观看一区二区三区 | 最新国产福利片在线观看 | 欧美综合亚洲 | 亚洲一级理论片 | 日韩一区二区久久久久久 | 在线亚洲日产一区二区 | 亚州视频一区二区 | 深夜在线| 成人国产在线看不卡 |