JAVA中把字符串轉(zhuǎn)換成字符數(shù)組的方法:java中通常用split()分割字符串,返回的是一個(gè)數(shù)組。
站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到興城網(wǎng)站設(shè)計(jì)與興城網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋興城地區(qū)。
1、如果用“.”作為分隔的話,必須是如下寫(xiě)法,String.split("\\."),這樣才能正確的分隔開(kāi),不能用String.split(".");
2、如果用“|”作為分隔的話,必須是如下寫(xiě)法,String.split("\\|"),這樣才能正確的分隔開(kāi),不能用String.split("|");
3、如果在一個(gè)字符串中有多個(gè)分隔符,可以用“|”作為連字符,如,“acount=? and uu =? or n=?”,把三個(gè)都分隔出來(lái),可以用string.split("and|or");
4、如果想在串中使用"\"字符,則也需要轉(zhuǎn)義.首先要表達(dá)"aaaa\bbbb"這個(gè)串就應(yīng)該用"aaaa\\bbbb",如果要分隔就應(yīng)該這樣才能得到正確結(jié)果,
String[] aa = "aaa\\bbb\\bccc".split("\\\\");
5、如果是"abc"這種字符串,就直接
String string = "abc"
;
char [] stringArr =
string.toCharArray(); //注意返回值是char數(shù)組
6、如果要返回byte數(shù)組就直接使用getBytes方法就ok了:
span style="white-space:pre" /spanString string = "abc" ;
span style="white-space:pre" /spanbyte [] stringArr = string.getBytes();
java里java字符串?dāng)?shù)組合并成一個(gè)數(shù)組方法如下:
//方法一 Arrays類(lèi)
String[] a = {"A","B","C"};
String[] b = {"D","E"};
// ListString list = Arrays.asList(a);? --OK
// ListString list = Arrays.asList("A","B","C"); --OK
// list.add("F"); --UnsupportedOperationException
// list.remove("A"); --UnsupportedOperationException
// list.set(1,"javaee");--OK (因?yàn)槭前褦?shù)組轉(zhuǎn)為集合,其本質(zhì)還是數(shù)組,數(shù)組長(zhǎng)度固定不變,但內(nèi)容可以改變)
// 結(jié)論:雖然可以把數(shù)組轉(zhuǎn)為集合,但是集合長(zhǎng)度不能改變
List list = new ArrayList(Arrays.asList(a));
list.addAll(Arrays.asList(b));
String[] str = new String[list.size()];
list.toArray(str);
for(int x=0;xstr.length;x++){
System.out.print(str[x] + " ");
}
//方法二 循環(huán)遍歷
// 兩個(gè)數(shù)組合并
String[] str1 = {"Hello","world","java"};
String[] str2 = {"Veriable","syntax","interator"};
String[] newStr = new String[str1.length+str2.length];
//newStr = str1;數(shù)組是引用類(lèi)型
for(int x=0;xstr1.length;x++){
newStr[x] = str1[x];
}
for(int y=0;ystr2.length;y++){
newStr[str1.length+y]=str2[y];
}
for(int y=0;ynewStr.length;y++){
System.out.println(newStr[y] + " ");
}
// 方法三
String[] str1 = {"Hello","world","java"};
String[] str2 = {"Veriable","syntax","interator"};
int str1Length = str1.length;
int str2length = str2.length;
str1 = Arrays.copyOf(str1, str1Length+str2length);//數(shù)組擴(kuò)容
System.arraycopy(str2, 0, str1, str1Length, str2length);
System.out.println(Arrays.toString(str1));
可以使用兩個(gè)變量分別記錄小寫(xiě)字母的個(gè)數(shù)和大寫(xiě)字母的個(gè)數(shù),然后遍歷整個(gè)字符數(shù)組,使用Java中的Character類(lèi)的isLowerCase()和toUpperCase()方法來(lái)判斷和轉(zhuǎn)換小寫(xiě)字母。如下代碼所示:
char[] array = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
int lowerCount = 0;
int upperCount = 0;
for (int i = 0; i array.length; i++) {
if (Character.isLowerCase(array[i])) {
lowerCount++;
array[i] = Character.toUpperCase(array[i]);
} else {
upperCount++;
}
}
System.out.println("小寫(xiě)字母?jìng)€(gè)數(shù):" + lowerCount);
System.out.println("大寫(xiě)字母?jìng)€(gè)數(shù):" + upperCount);
System.out.println("轉(zhuǎn)換后的字符數(shù)組:" + Arrays.toString(array));
import java.io.File;
import java.io.OutputStream;
import java.io.FileOutputStream;
public class TestFile {
public static void main(String[] args) throws Exception{
//在d盤(pán)上創(chuàng)建一個(gè)名為testfile的文本文件
File f = new File("D:"+File.separator+"testfile.txt");
//用FileOutputSteam包裝文件,并設(shè)置文件可追加
OutputStream out = new FileOutputStream(f,true);
//字符數(shù)組
String[] str = {"shanghai","beijing","guangdong","xiamen"};
for(int i =0; istr.length; i++){
out.write(str[i].getBytes()); //向文件中寫(xiě)入數(shù)據(jù)
out.write('\r'); // \r\n表示換行
out.write('\n');
}
out.close(); //關(guān)閉輸出流
System.out.println("寫(xiě)入成功!");
}
}
java中給字符數(shù)組批量賦值,可以使用for-each來(lái)給字符數(shù)組賦值,代碼如下:
package?com.qiu.lin.he;
public?class?CeShi?{
public?static?void?main(String[]?args)?{
char?c[]?=?new?char[26];
String?s?=?"abcdefghijklmnopqrstuvwxyz";
char?ss[]?=?s.toCharArray();
for?(int?i?=?0;?i??ss.length;?i++)?{
c[i]?=?ss[i];//給字符數(shù)組賦值
}
for?(char?x?:?c)?{
System.out.print(x);//循環(huán)輸出字符數(shù)組的內(nèi)容
}
}
}
結(jié)果如下: