public class StringTest
{
public static void main(String[] args)
{
String str="TOM:89|JERRY:90|TONY:88";
String str1[]=str.split("\\|");
System.out.println(str1[0]);
System.out.println(str1[1]);
System.out.println(str1[2]);
System.out.println(str1.length);
for(int x=0;x<str.length();x++)
{
// System.out.println(str.length());
String str2[]=str1[x].split(":");
System.out.println(str2[0]+"-->"+str2[1]);
}
}
}运行结果显示:TOM:89
JERRY:90
TONY:88
但是为什么显示str1.length为3???System.out.println(str1[0]);而这里输出是TOM:89,这与str1.length为3之间好像有点什么关系,但又说不清楚,??
String str1[]=str.split("\\|");分割结果存储在数据中,到底在数组中是怎么存储的???
{
public static void main(String[] args)
{
String str="TOM:89|JERRY:90|TONY:88";
String str1[]=str.split("\\|");
System.out.println(str1[0]);
System.out.println(str1[1]);
System.out.println(str1[2]);
System.out.println(str1.length);
for(int x=0;x<str.length();x++)
{
// System.out.println(str.length());
String str2[]=str1[x].split(":");
System.out.println(str2[0]+"-->"+str2[1]);
}
}
}运行结果显示:TOM:89
JERRY:90
TONY:88
但是为什么显示str1.length为3???System.out.println(str1[0]);而这里输出是TOM:89,这与str1.length为3之间好像有点什么关系,但又说不清楚,??
String str1[]=str.split("\\|");分割结果存储在数据中,到底在数组中是怎么存储的???
{
public static void main(String[] args)
{
String str="TOM:89|JERRY:90|TONY:88";
String str1[]=str.split("\\|"); split("|");按|分隔数组,然后每一个对象分别存储到str1数组中
格式如下:
str1[0]="Tom:89"
str1[1]="JERRY:90"
str1[2]="TONY:88"
System.out.println(str1[0]);
System.out.println(str1[1]);
System.out.println(str1[2]);
System.out.println(str1.length);
//所以这上面打印出来的就是上面数组对应的
for(int x=0;x<str.length();x++) //这里输出数组分开的大小
{
// System.out.println(str.length()); 应该是3
String str2[]=str1[x].split(":"); 然后再将数组中的每一个对象再次分隔
System.out.println(str2[0]+"-->"+str2[1]); //就分别打印出分数,和人名,原理如上
}
}
}
那么为什么这里输出的是3????
以前对问题容易浅尝辄止,改了这个毛病后,对问题的思考就多了!!
有些问题要是好好想想的话,还真能挖掘出来不少东西呢!!!
为什么是这个,难道不是 for(int x=0;x<str1.length;x++) 吗?
这个是你分割以后得到的数组的元素个数啊,有什么问题???
{
public static void main(String[] args)
{
String str="TOM:89|JERRY:90|TONY:88";
String str1[]=str.split("\\|");
System.out.println(str1[0]);
System.out.println(str1[1]);
System.out.println(str1[2]);
System.out.println(str1.length);
//原程序的 for(int x=0;x<str.length();x++)是错误的,str.length()大小是23 for(int x=0;x<str1.length;x++)
{
System.out.println(str.length());
String str2[]=str1[x].split(":");
System.out.println(str2[0]+"-->"+str2[1]);
}
}
}