Java 我需要把一个字符串专为数组怎么办?

Python011

Java 我需要把一个字符串专为数组怎么办?,第1张

java 中要将一个字符串转换成一个字符数组需要使用 String 类中提供的 toCharArray() 方法进行操作.实例如下:

String str = "abcde"//这是一个string类型的字符串

char[] ch = str.toCharArray()//使用string类型的tocharArray()方法进行转换。

java里java字符串数组合并成一个数组方法如下:

//方法一 Arrays类

String[] a = {"A","B","C"}

String[] b = {"D","E"}

// List<String>list = Arrays.asList(a)  --OK

// List<String>list = Arrays.asList("A","B","C")--OK

// list.add("F")--UnsupportedOperationException

// list.remove("A")--UnsupportedOperationException

// list.set(1,"javaee")--OK (因为是把数组转为集合,其本质还是数组,数组长度固定不变,但内容可以改变)

// 结论:虽然可以把数组转为集合,但是集合长度不能改变

List list = new ArrayList(Arrays.asList(a))

list.addAll(Arrays.asList(b))

String[] str = new String[list.size()]

list.toArray(str)

for(int x=0x<str.lengthx++){

System.out.print(str[x] + " ")

}

//方法二 循环遍历

// 两个数组合并

String[] str1 = {"Hello","world","java"}

String[] str2 = {"Veriable","syntax","interator"}

String[] newStr = new String[str1.length+str2.length]

//newStr = str1数组是引用类型

for(int x=0x<str1.lengthx++){

newStr[x] = str1[x]

}

for(int y=0y<str2.lengthy++){

newStr[str1.length+y]=str2[y]

}

for(int y=0y<newStr.lengthy++){

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)//数组扩容

System.arraycopy(str2, 0, str1, str1Length, str2length)

System.out.println(Arrays.toString(str1))

JAVA中把字符串转换成字符数组的方法:java中通常用split()分割字符串,返回的是一个数组。

1、如果用“.”作为分隔的话,必须是如下写法,String.split("\\."),这样才能正确的分隔开,不能用String.split(".")

2、如果用“|”作为分隔的话,必须是如下写法,String.split("\\|"),这样才能正确的分隔开,不能用String.split("|")

3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用string.split("and|or")

4、如果想在串中使用"\"字符,则也需要转义.首先要表达"aaaa\bbbb"这个串就应该用"aaaa\\bbbb",如果要分隔就应该这样才能得到正确结果,

String[] aa = "aaa\\bbb\\bccc".split("\\\\")

5、如果是"abc"这种字符串,就直接

String string = "abc"

char [] stringArr =

string.toCharArray()//注意返回值是char数组

6、如果要返回byte数组就直接使用getBytes方法就ok了:

<span style="white-space:pre"> </span>String string = "abc"

<span style="white-space:pre"> </span>byte [] stringArr = string.getBytes()