如果split中的分割参数在字符串中有连续的几个,那么保存在数组里的将会是会么?
是""还是null ? 还是那个参数?
好像这三种答案都不对!class SplitTest {
public static void main(String args[]) {
String str = "abc d efg";
String[] arrStr;
public void test() {
String what;
what = ""; //此外应该输入什么字符??
arrStr = str.split(" "); //用空格来分割
System.out.println("切割后长度为:" + arrStr.length);
for(int i=0; i<arrStr.length; i++) {
if(!(arrStr[i]==what))
System.out.println(arrStr[i]);
else
System.out.println("空格");
}
}
}
}
是""还是null ? 还是那个参数?
好像这三种答案都不对!class SplitTest {
public static void main(String args[]) {
String str = "abc d efg";
String[] arrStr;
public void test() {
String what;
what = ""; //此外应该输入什么字符??
arrStr = str.split(" "); //用空格来分割
System.out.println("切割后长度为:" + arrStr.length);
for(int i=0; i<arrStr.length; i++) {
if(!(arrStr[i]==what))
System.out.println(arrStr[i]);
else
System.out.println("空格");
}
}
}
}
楼主【wxl543】截止到2008-07-22 15:25:36的历史汇总数据(不包括此帖):
发帖的总数量:6 发帖的总分数:200 每贴平均分数:33
回帖的总数量:8 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:6 结贴的总分数:200
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:100.00% 结分的百分比:100.00%
无满意结贴率:0.00 % 无满意结分率:0.00 %
敬礼!
class SplitTest { public static void main(String args[]) {
String str = "abc d efg";
String[] arrStr; String what;
what = ""; //此外应该输入什么字符?? arrStr = str.split(" "); //用空格来分割 System.out.println("切割后长度为:" + arrStr.length);
for (int i = 0; i < arrStr.length; i++) {
if (!(arrStr[i] == what)) {
System.out.println(arrStr[i]);
} else {
System.out.println("空格");
}
}
}
}不知道你代码里的test()是个什么东西。
以空格分隔的话,你的"abc d efg"是这样组成的abc空格空格d空格空格efg"
所以以空格做分隔的话得到的结果数组长度为5,内容是0:abc 1:""(空串) 2:d 3:""(空串) 4:eft
所以
if(!(arrStr[i]==what))
System.out.println(arrStr[i]);
else
System.out.println("空格");
其实是没有意义的。
总是会执行if部分。
String str = "abc d efg";
String[] arrStr; String what = " "; //此外应该输入什么字符?? arrStr = str.split(" "); //用空格来分割 System.out.println("切割后长度为:" + arrStr.length);
for (int i = 0; i < arrStr.length; i++) {
if (!(arrStr[i].equals(""))) {
System.out.println(arrStr[i]);
} else {
System.out.println("空串");
}
}
}
}注意字符串比较实用equals方法,而不要使用==来判断
public class TestSplit { public TestSplit()
{
}
public static void main (String[] args)
{
String str = "abc d e fg";
String[] arrStr;
String what="";
arrStr = str.split(" ");
System.out.println("切割后的长度:"+ arrStr.length);
for(int i=0;i<arrStr.length;i++)
{
if(!(arrStr[i]==what))
System.out.println(arrStr[i]);
else
System.out.println("空");
}
}
}运行结果:
切割后的长度:4
abc
d
e
fg
String str = "abc d efg";
str = str.replaceAll("[ ]+", " ");
String[] arrStr; String what = " "; arrStr = str.split(what); //用空格来分割 System.out.println("切割后长度为:" + arrStr.length);
for (String temp : arrStr) {
System.out.println(temp);
}
/*
for (int i = 0; i < arrStr.length; i++) {
if (!(arrStr[i].equals(""))) {
System.out.println(arrStr[i]);
} else {
System.out.println("空串");
}
}*/
}
}
public static void main(String args[]) {
String str = "abc'd'''efg";
String[] arrStr; String what;
what = ""; // 此外应该输入什么字符??
arrStr = str.split("'"); // 用空格来分割
System.out.println("切割后长度为:" + arrStr.length);
for (int i = 0; i < arrStr.length; i++) {
if (!(arrStr[i] == what))
System.out.println(arrStr[i]);
else
System.out.println("空格"); }
}
}
结果数组里肯定是""
把它分割后是什么样的?是不是
abc
.
.
.
d
.
g
.
.
.最初的贴子我没有把问题陈述清楚.