Java 中 String 和字元陣列的區別。
從技術角度來說,字元陣列和字串都包含字元序列,並用作字元集合。但是兩者之間存在顯著差異,我們將在下面討論。
以下是 String 和字元陣列之間的一些重要區別。
序號 | 關鍵 | String | 字元陣列 |
---|---|---|---|
1 | 實現 | String 用於儲存字元序列,並表示為單個數據型別和單個實體。 | 另一方面,字元陣列是 char 資料型別的順序集合,其中每個元素都是一個獨立的實體。 |
2 | 內部實現 | String 的內部實現使其具有不可變性。 | 另一方面,字元陣列是可變的。 |
3 | 內建函式 | 由於 String 是一個類,因此提供了各種內建函式,例如 substring()、charAt() 等。 | Java 中沒有為字元陣列操作提供內建函式。 |
4 | 連線 | String 可以使用 + 運算子或其內建函式 concate() 進行連線。 | 字元陣列不能使用這些函式/運算子進行連線。 |
5 | 儲存 | 字串可以以任何隨機順序儲存在記憶體的一部分中,該部分稱為 SCP(字串常量池)。 | 字元陣列中的元素連續儲存在記憶體位置遞增的區域中,該區域稱為堆。 |
6 | 轉換 | 可以使用 String 類的 toCharArray() 方法將 String 轉換為字元陣列。 | 另一方面,可以透過將其傳遞給 String 建構函式將字元陣列轉換為 String。 |
String 與字元陣列示例
JavaTester.java
public class JavaTester{ public static void main(String[] args) { String s = "HELLO"; char [] ch = s.toCharArray(); char[] a = {'H', 'E', 'L', 'L', 'O'}; String A = new String(a); System.out.println(s); System.out.println(A); } }
輸出
HELLO HELLO
廣告