本文目录一览:
- 1、java中字符串和字符数组的区别?
- 2、java怎么把一个字符串变成数组
- 3、JAVA中怎么把字符串转换成字符数组
- 4、java中怎么把字符串转化为字符串数组?
- 5、如何在java里java字符串数组合并成一个数组?
java中字符串和字符数组的区别?
字符串以\0结束那是字符串在计算机内的存储结构,你定义了字符串计算机默认会在字符串后加上\0做为字符串结束标记,但是你写程序时并没有显式的写出来。
判断是否为字符串:字符串都是用双引号包含的。例如char *string="beijing"。
定义字符串有两种方法:一、字符串指针 char *string="abcde";
二、一维字符数组。例如:char string[10];string="abcde";
用字符数组定义注意了,数组长度为n,但是字符个数只能为n-1,就是上面说的计算机默认加了\0占了一个,否则会溢出。
字符数组一维的和字符串一样,二维的就是char string[M][N];当然你还可以类似定义多维的。
java怎么把一个字符串变成数组
java 中要将一个字符串转换成一个字符数组需要使用 String 类中提供的 toCharArray() 方法进行操作.实例如下:
String str = "abcde";//这是一个string类型的字符串
char[] ch = str.toCharArray();//使用string类型的tocharArray()方法进行转换。
JAVA中怎么把字符串转换成字符数组
“字符串” 转 “字符数组”,有以下方法
1.通过字符串的toCharArray()方法
/*String.toCharArray 方法 ,作用:将字符串转换为字符数组。*/
String s=new String("abc");
char[] ch=s.toCharArray();
2.通过循环和字符串的charAt()方法
/*public char charAt(intindex)
*返回处于index位置上的字符,index的范围是[0,s.length()-1],字符串中的第一个字符位于index 0上,下一个字符位于index 1上,并以此类推,类似于数组下标索引。
*抛出异常:IndexOutOfBoundsException:当参数为负数或者参数不小于字符串的长度时抛出。
*/
String s=new String("abc");
char[] ch = new char[s.length()];
for(int i=0;is.length();i++){
ch[i]=s.charAt(i);
}
3.通过字符串的getChars方法
/*
*public void getChars(int start,int end,char c[],int offset)
该方法的作用是将当前字符串从start到end-1位置上的字符复制到字符数组c中,并从c的offset处开始存放
*/
String s=new String("abc");
char[] ch = new char[s.length()];
s.getChars(0, s.length(), ch, 0);
java中怎么把字符串转化为字符串数组?
split() 方法用于把一个字符串分割成字符串数组。
具体学习资料如下:
定义和用法:split() 方法用于把一个字符串分割成字符串数组。
语法:stringObject.split(separator,howmany)
参数:
separator为必需。字符串或正则表达式,从该参数指定的地方分割 stringObject;
howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
返回值:但是,如果 separator 是包含子表达式的正则表达式,那么返回的数组中包括与这些子表达式匹配的字串(但不包括与整个正则表达式匹配的文本)。一个字符串数组。该数组是通过在 separator 指定的边界处将字符串 stringObject 分割成子串创建的。返回的数组中的字串不包括separator 自身。
提示和注释:
如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
String.split() 执行的操作与 Array.join 执行的操作是相反的。
示例:
例子 1
在本例中,我们将按照不同的方式来分割字符串:
script type="text/javascript"
var str="How are you doing today?"
document.write(str.split(" ") + "br /")
document.write(str.split("") + "br /")
document.write(str.split(" ",3))
/script
输出:
How,are,you,doing,today?
H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?
How,are,you
例子 2
在本例中,我们将分割结构更为复杂的字符串:
"2:3:4:5".split(":") //将返回["2", "3", "4", "5"]
"|a|b|c".split("|") //将返回["", "a", "b", "c"]
例子 3
使用下面的代码,可以把句子分割成单词:
var words = sentence.split(' ')
或者使用正则表达式作为 separator:
var words = sentence.split(/\s+/)
例子 4
如果您希望把单词分割为字母,或者把字符串分割为字符,可使用下面的代码:
"hello".split("") //可返回 ["h", "e", "l", "l", "o"]
若只需要返回一部分字符,请使用 howmany 参数:
"hello".split("", 3) //可返回 ["h", "e", "l"]
参考资料
将字符串转化为字符串数组.CSDN博客[引用时间2017-12-28]
如何在java里java字符串数组合并成一个数组?
java里java字符串数组合并成一个数组方法如下:
//方法一 Arrays类
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 (因为是把数组转为集合,其本质还是数组,数组长度固定不变,但内容可以改变)
// 结论:虽然可以把数组转为集合,但是集合长度不能改变
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] + " ");
}
//方法二 循环遍历
// 两个数组合并
String[] str1 = {"Hello","world","java"};
String[] str2 = {"Veriable","syntax","interator"};
String[] newStr = new String[str1.length+str2.length];
//newStr = str1;数组是引用类型
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);//数组扩容
System.arraycopy(str2, 0, str1, str1Length, str2length);
System.out.println(Arrays.toString(str1));