Java中的字符數組| Java 字符數組
已發表: 2020-12-01目錄
介紹
我們今天處理的大多數數據都包含字符,如果程序員熟悉並提供處理字符數據的方法,則可以說編程語言很靈活。
java中的char數組非常有用且易於使用,字符串在java中是不可變的,但我們可以操作char數組中的條目。 與列表和集合相比,字符數組更快,甚至比集合和列表更簡單。
現在讓我們探索 char 數組的工作原理!
聲明和初始化
char 數組的聲明類似於 java 中常規數組的聲明。 “char[] array_name”或“char array_name[]”是聲明時要遵循的語法。
聲明之後,接下來我們要做的就是初始化。 “array_name = new char[array_length]”是要遵循的語法。 無論如何,我們可以使用“char array_name[] = new char[array_length]”語法在一個單一的過程中進行聲明和初始化。 數組的長度應在初始化時在 char 數組中聲明。
公共類測試{ 公共靜態無效主要(字符串args []) { //聲明-1 字符arr[]; arr =新字符[ 4 ]; //聲明-2 字符arr2[] =新字符[ 4 ]; //賦值-1 char arr1[] =new char []{ ' a ' , ' b ' , ' c ' , ' d ' }; //賦值-2 arr[ 0 ] = '一個' ; arr[ 1 ] = ' b ' ; arr[ 2 ] = ' c ' ; arr[ 3 ] = ' d ' ; 系統。 出來。 println(arr); 系統。 出來。 println(arr1); } } |
在上面的代碼片段中,declaration-1 和declaration-2 都是聲明和初始化的方式。 而assigning-1 和assigning-2 都是將條目推送到數組的兩種方式。 請記住,當我們打印一個 char 數組時,它會將所有合併為字符串的字符打印出來,在上述情況下,輸出將是“abcd”。

了解更多: Java 中的事件處理:它是什麼以及它是如何工作的?
循環一個 char 數組
在 char 數組上循環是 java 中一項有趣的任務,我們可以使用常規的“for 循環”或“for:each”循環來循環數組。
//循環-1 for ( int i = 0 ;i < arr .length ; i ++ ) 系統。 出來。 打印(arr [i]); //循環-2 對於(字符c : arr) 系統。 出來。 打印(c); |
在上面的代碼片段中,loop-1 是一個常規的 for 循環,循環 1 的最終輸出將是“abcd”。 而loop-2是一個for:每個循環和loop-2的最終輸出都是“abcd”。
字符數組的長度可以使用 length 屬性來獲得。 “Array_name.length”是要遵循的語法。
char數組[] =new char []{ ' h ' , ' e ' , ' l ' , ' l ' , ' o ' }; 系統。 出來。 println(數組。長度); |
正如預期的那樣,上面的代碼片段打印了 5。
報名參加世界頂尖大學的軟件工程課程。 獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。
對字符數組進行排序
java中的數組可以使用“Arrays.sort(array_name)”進行排序。 這將按字典順序對傳遞的字符數組進行排序。

char [] 數組= { ' h ' , ' e ' , ' l ' , ' l ' , ' o ' }; 數組。 排序(數組); 系統。 出來。 println(數組。toString(數組)) ; //第1行 系統。 出來。 println(數組); //第2行 |
請注意,我們需要導入 java.util.Arrays 才能使 Arrays.sort() 和 Arrays.toString() 工作。
在上面的代碼片段中,char 數組按字典順序排序,打印數組會將合併為字符串的字符打印出來。 “line2”的輸出將是“ehllo”,如果您不將輸出作為合併字符串,而是希望在末尾使用方括號打印整個數組,那麼 Arrays.toString() 就可以完成這項工作。 “line1”的輸出將是 [e, h, l, l, o]。
在前面的代碼片段中,我們通過填充數組中的條目來聲明 char 數組,但是如果我們想將字符串轉換為 char 數組怎麼辦?
無論如何,我們用字符串長度初始化一個 char 數組,遍歷字符串,並將每個字符附加到數組中就可以了。
字符串s = “你好” ; 字符[] arr =新字符[s . 長度()]; for ( int i = 0 ;i < s .length() ; i ++ ) arr[i] = s 。 字符 (i); 系統。 出來。 println(數組。toString(arr)) ; |
上面的代碼片段將按預期打印 [h, e, l, l,o]。
上面的代碼片段將完成將字符串轉換為 char 數組的藝術,但是每次我們要將字符串轉換為 char 數組時是否需要編寫這麼長的代碼? 好吧,答案是否定的。
Java 提供了一個稱為 toCharArray() 的漂亮方法,該方法必須應用於字符串並返回 char 數組。
字符串s = “ aejou ” ; 字符[] arr = s 。 toCharArray(); 系統。 出來。 println(數組。toString(arr)) ; //第1行 arr [ 2 ] = '我' ; 系統。 出來。 println(數組。toString(arr)) ; //第2行 |
正如預期的那樣,“line1”打印 [a, e, j, o, u] 作為輸出。 正如已經討論過的,與字符串不同,我們可以編輯或操作 char 數組的條目。 所以 line2 的輸出將是 [a, e, i, o, u]。
現在我們已經看到了在 java 中將字符串轉換為 char 數組的方法,如果我們想要一個反之亦然的任務怎麼辦?
沒關係,java 也有執行此類任務的方法。

char [] arr = { ' h ' , ' e ' , ' y ' , ' ' , ' t ' , ' h ' , ' e ' , ' r ' , ' e ' }; 字符串s1 =新字符串(arr); //方法1 系統。 出來。 println(s1); 字符串s2 =字符串。 值(arr); //方法2 系統。 出來。 println(s2); |
在上面的代碼片段中,我們可以看到將 char 數組轉換為字符串的兩種方法。 正如預期的那樣,上述代碼段的輸出將是“嘿,那裡”。
另請閱讀:初學者的 17 個有趣的 Java 項目想法和主題
結論
我們開始了解什麼是 char 數組,學習了各種初始化和聲明 char 數組的方法。 瀏覽了一個用於循環 char 數組的片段。 使用預定義的 Arrays.sort() 方法對 char 數組進行排序。
並觀察了字符串到字符數組轉換的簡單和預定義的實現,還觀察了使用各種方法的反之亦然實現。 現在您已經熟悉 char 數組的概念,開始實現它們吧!
如果您有興趣了解有關 Java、OOP 和全棧軟件開發的更多信息,請查看 upGrad 和 IIIT-B 的全棧軟件開發執行 PG 計劃,該計劃專為工作專業人士設計,並提供 500 多個小時的嚴格培訓, 9 個以上的項目和任務、IIIT-B 校友身份、實用的實踐頂點項目和頂級公司的工作協助。
