Java中將String轉(zhuǎn)換為char數(shù)組的三種方式
方法1:使用toCharArray()
toCharArray()方法是最直接的方法,可以將字符串轉(zhuǎn)換為字符數(shù)組。
public class StringToCharArrayExample {
public static void main(String[] args) {
String str = "Hello";
char[] charArray = str.toCharArray(); // 將String轉(zhuǎn)換為char數(shù)組
// 輸出char數(shù)組
for (char c : charArray) {
System.out.print(c + " ");
}
}
}
輸出:
H e l l o
方法2:使用charAt()和循環(huán)
你可以使用charAt()方法在循環(huán)中逐個(gè)獲取String中的字符,然后手動(dòng)填充字符數(shù)組。
public class StringToCharArrayExample {
public static void main(String[] args) {
String str = "Hello";
char[] charArray = new char[str.length()]; // 創(chuàng)建一個(gè)與String長(zhǎng)度相同的char數(shù)組
for (int i = 0; i < str.length(); i++) {
charArray[i] = str.charAt(i); // 使用charAt獲取每個(gè)字符并填充數(shù)組
}
// 輸出char數(shù)組
for (char c : charArray) {
System.out.print(c + " ");
}
}
}
輸出:
H e l l o
方法3:使用getChars()方法
getChars()方法可以將指定范圍的字符從String復(fù)制到字符數(shù)組中。
public class StringToCharArrayExample {
public static void main(String[] args) {
String str = "Hello";
char[] charArray = new char[str.length()]; // 創(chuàng)建一個(gè)與String長(zhǎng)度相同的char數(shù)組
str.getChars(0, str.length(), charArray, 0); // 將字符串的字符復(fù)制到char數(shù)組中
// 輸出char數(shù)組
for (char c : charArray) {
System.out.print(c + " ");
}
}
}
輸出:
H e l l o
總結(jié)
- toCharArray(): 最直接的方法,將整個(gè)字符串轉(zhuǎn)換為字符數(shù)組。
- charAt() + 循環(huán): 手動(dòng)獲取每個(gè)字符并放入數(shù)組。
- getChars(): 復(fù)制指定范圍的字符到字符數(shù)組中。
附: char數(shù)組轉(zhuǎn)string
將char轉(zhuǎn)換為String大致有6種方法??偨Y(jié)如下:
1. String s = String.valueOf('c'); //效率最高的方法
2. String s = String.valueOf(new char[]{'c'}); //將一個(gè)char數(shù)組轉(zhuǎn)換成String
3. String s = Character.toString('c');
// Character.toString(char)方法實(shí)際上直接返回String.valueOf(char)
4. String s = new Character('c').toString();
5. String s = "" + 'c';
// 雖然這個(gè)方法很簡(jiǎn)單,但這是效率最低的方法
// Java中的String Object的值實(shí)際上是不可變的,是一個(gè)final的變量。
// 所以我們每次對(duì)String做出任何改變,都是初始化了一個(gè)全新的String Object并將原來(lái)的變量指向了這個(gè)新String。
// 而Java對(duì)使用+運(yùn)算符處理String相加進(jìn)行了方法重載。
// 字符串直接相加連接實(shí)際上調(diào)用了如下方法:
// new StringBuilder().append("").append('c').toString();
6. String s = new String(new char[]{'c'});
到此這篇關(guān)于Java中將String轉(zhuǎn)換為char數(shù)組的三種方式的文章就介紹到這了,更多相關(guān)Java將String轉(zhuǎn)換char數(shù)組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot實(shí)現(xiàn)MQTT通信的示例代碼
本文主要介紹了Springboot實(shí)現(xiàn)MQTT通信的示例代碼,包含了MQTT協(xié)議的特點(diǎn)和工作原理等,具有一定的參考價(jià)值,感興趣的可以了解一下2025-01-01
Java使用jxl包寫(xiě)Excel文件適合列寬實(shí)現(xiàn)
用jxl.jar包,讀寫(xiě)過(guò)Excel文件。也沒(méi)有注意最適合列寬的問(wèn)題,但是jxl.jar沒(méi)有提供最適合列寬的功能,上次用到寫(xiě)了一下,可以基本實(shí)現(xiàn)最適合列寬。2013-11-11
詳解使用Maven開(kāi)發(fā)Web應(yīng)用詳細(xì)步驟
這篇文章主要介紹了詳解使用Maven開(kāi)發(fā)Web應(yīng)用詳細(xì)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
springboot?集成easy-captcha實(shí)現(xiàn)圖像驗(yàn)證碼顯示和登錄
本文主要介紹了springboot?集成easy-captcha實(shí)現(xiàn)圖像驗(yàn)證碼顯示和登錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
Java實(shí)現(xiàn)仿淘寶滑動(dòng)驗(yàn)證碼研究代碼詳解
這篇文章主要介紹了Java實(shí)現(xiàn)仿淘寶滑動(dòng)驗(yàn)證碼研究代碼詳解的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
java開(kāi)源項(xiàng)目jeecgboot的超詳細(xì)解析
JeecgBoot是一款基于BPM的低代碼平臺(tái),下面這篇文章主要給大家介紹了關(guān)于java開(kāi)源項(xiàng)目jeecgboot的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10
一文帶你深入理解Java?AbstractQueuedSynchronizer
在并發(fā)編程中,鎖是一種保證線程安全的方式,這篇文章主要為大家介紹了AbstractQueuedSynchronizer(AQS)的數(shù)據(jù)結(jié)構(gòu)及實(shí)現(xiàn)原理,感興趣的小伙伴可以了解一下2023-07-07

