关于java字符串切割split的几个问题
publicclassDivision{publicstaticvoidmain(Stringargs[]){Stringstr=newString("abc,def,g...
public class Division {
public static void main(String args[]) {
String str = new String("abc, def, ghi, gkl");
String[] newstr = str.split(",");
for (int i = 0; i < newstr.length; i++) {
System.out.println(newstr[i]);
}
String[] newstr2 = str.split(",", 2);
for (int j = 0; j < newstr2.length; j++) {
System.out.println(newstr2[j]);
}
}
}
1.String[] 是什么意思
2.newstr.length的值为什么是4
3.第二次限定拆分两次的结果不应该是变成三段吗
abc
def
ghi,gki 展开
public static void main(String args[]) {
String str = new String("abc, def, ghi, gkl");
String[] newstr = str.split(",");
for (int i = 0; i < newstr.length; i++) {
System.out.println(newstr[i]);
}
String[] newstr2 = str.split(",", 2);
for (int j = 0; j < newstr2.length; j++) {
System.out.println(newstr2[j]);
}
}
}
1.String[] 是什么意思
2.newstr.length的值为什么是4
3.第二次限定拆分两次的结果不应该是变成三段吗
abc
def
ghi,gki 展开
2个回答
展开全部
String[] 就是字符串数组的意思。
newstr是字符串数组的引用,newstr.length就是这个字符串数组的长度。
这个其实看API最好,
limit 参数控制模式应用的次数,因此影响所得数组的长度。如果该限制 n 大于 0,则模式将被最多应用
n - 1 次,数组的长度将不会大于 n,而且数组的最后一项将包含所有超出最后匹配的定界符的输入。如果 n
为非正,那么模式将被应用尽可能多的次数,而且数组可以是任何长度。如果 n 为
0,那么模式将被应用尽可能多的次数,数组可以是任何长度,并且结尾空字符串将被丢弃。
追问
感谢回答
字符串长度是看有多少单个字符组成,数组长度是看有多少个字符串组成,是这样理解吗
我还是初学,第三个回答不是很明白,按照我自己的理解限定拆分一次,比如原来字符串为aaa,拆分一次变成“a”和“aa”两个字符串,拆分两次变成“a”和“a”和“a”三个字符串,可我运行的时候把限定次数定为1时,输出结果没有变化。限定次数改为2时,结果才是我理解的拆分一次,这个要怎么理解
追答
还是看api说明,当限定拆分一次时,n=1,则模式最多被应用n-1=0,所以数组的长度仍然是1,即没啥变化,当n=2时,模式被医用n-1=1次,将aaa拆分成a和aa,数组的长度为2,仍符合描述。
展开全部
1 String的数组,java 控制台应用要求 main函数的类型必须是
public static void main(String args[]),有这个方法的类才能用java 类名的方式运行。
args是java 类名后面的参数,例如
java Division 1 2 3,那么args数组有3个元素,分别是"1" "2" "3"
2,没错,就是切成4段
3,对,切成3段
public static void main(String args[]),有这个方法的类才能用java 类名的方式运行。
args是java 类名后面的参数,例如
java Division 1 2 3,那么args数组有3个元素,分别是"1" "2" "3"
2,没错,就是切成4段
3,对,切成3段
更多追问追答
追问
String[] newstr2 = str.split(",", 2);
for (int j = 0; j < newstr2.length; j++) {
System.out.println(newstr2[j]);
}
eclipse的输出结果是
abc
def,ghi,gkl
按照我的理解分割2次,应该是原来一段字符分成三段
我理解的输出结果:
abc
def
ghi,gkl
追答
理解错了,2是切成的段数上限,而不是切的次数,你看看api的文档,鼠标至上去就有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询