中易网

java 字符串拆分

答案:6  悬赏:80  
解决时间 2021-02-03 11:16
字符串 String str="TOM:89|JERRY:90|TONY:78"; 拆分两次第一次按 | 进行拆分,第二次按 : 进行拆分,最后的s2 应该会变成6组数据,为何只需输出 System.out.println(s2[0]+"---->"+s2[1]); 就能输出

TOM---->89
JERRY---->90
TONY---->78

public class Test1
{
public static void main(String args[]){
String str="TOM:89|JERRY:90|TONY:78";
String s1[]=str.split("\\|");
for(int x=0;x<s1.length;x++){
String s2[]=s1[x].split(":");
System.out.println(s2[0]+"---->"+s2[1]);
}

}
}

请详细阐述原理..谢谢
最佳答案
public class Test1
{
public static void main(String args[]){
String str="TOM:89|JERRY:90|TONY:78";
String s1[]=str.split("\\|");//这句话的意思是说 按 | 拆分字符串,得到一个数组,数组的内容是{TOM:89,JERRY:90,TONY:78}也就是说 s1[0] = TOM:89,S1[1]=JERRY:90,S1[2]= TONY:78
for(int x=0;x<s1.length;x++){ // 这句话的意思是说:把数组 s1 循环输出 得到 我上面说的那三个值;
String s2[]=s1[x].split(":"); //这句话的意思是 把s1的三个值(也就是上面的三个值,在按 : 拆分) 得到 最后的结果.
System.out.println(s2[0]+"---->"+s2[1]);
}

}
}
全部回答
第一次拆完之后s1={TOM:89,JERRY:90,TONY:78},length为3 循环: 对s1中的s1[o],s1[1],s1[2]循环拆分, 每次形成s2[0]----->s2[1],共三次。 为结果
首先要理解spit函数,这个函数以输入的正则来拆分成字符串,并且返回的是一维数组,所以在执行完String s1[]=str.split("\\|");时 s1是一个长度为3的一维。随后用一个for循环遍历这个一维数组,并且再次以冒号拆分成有一个一维数组s2,在按格式输出。
试试这个吧,好的话请采纳 public static void main(string[] args)  { pattern p = pattern.compile("(.+)(\\d{4})"); matcher m = p.matcher("石家庄市0311"); if (m.find()){ system.out.println(m.group(1)); system.out.println(m.group(2)); } }
public class Test1 { public static void main(String args[]){ String str="TOM:89|JERRY:90|TONY:78"; //定义字符串 String s1[]=str.split("\\|"); //转义字符,利用|拆分,得到结果s1[0]="TOM:89",s1[1]="JERRY:90"... for(int x=0;x<s1.length;x++){ //通过for循环,遍历数组s1 String s2[]=s1[x].split(":"); //用s2存取被拆分的字符串,即:说s2[0] = "TOM",s2[1]="89" System.out.println(s2[0]+"---->"+s2[1]); //问题的关键是每一次循环都把前面的s2给覆盖了 } } }
spit函数用来拆分成字符串,且返回的是一维数组 所以String s1[]=str.split("\\|");第一次拆分时,拆分成s1是一个长度为3的一维(维度从0开始,是0,1,2,所以是长度为3),S1[x] 拆分的结果 {"TOM:89","JERRY:90","TONY:78"}。 第二次用一个for循环遍历这个一维数组,并且再次以冒号拆分成有一个一维数组s2(维从0开始,是0,1,长度为2),然后按拆分的格式输出: TOM---->89 JERRY---->90 TONY---->78
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
7月份的小葱根部软烂需要挖起来重新种吗
戒烟已经第5天了,这几天午饭之后为什么会这
未激活的iphone5s怎么降级?拆除内置卡贴后官
给我推荐一个不需要谷歌账号和市场的大型射击
请问摩丝水草有种子吗?养它要注意些什么?
怎么加盟忆美泉
江桥镇附近哪有卖丝袜花的地方
请问什么叫做负责
七组用英语咋说
GB/T1346-2001规定,采用代用法测定水泥标准
最终幻想8菜刀王那里厉害?
从大成到涞水怎么坐车?
火花 谁唱的? 具体成员是哪些?
架向星空之桥有里番吗
baby,woman,man哪个是不同类
推荐资讯
右手断了四个手指能鉴定几级伤残?接上一个但
关于魅力飞飞的问题、飞飞高手请进。
科鲁兹1.6曲轴位置传感器系统性能,我更换了
雅典和北京相比气温年较差较大的城市是
word 2010中插入表格里,的花线是什么样的?
电视剧《魔界之龙珠》剧本作者是谁?
交通肇事罪不起诉条件都有哪些
职业医师,好考么,西医好考,还是中医好考
如果你的女朋友生病了,你会请假陪他一起去医
嘻刷刷的简谱
一场危机似乎过去了照样子用似乎造句
顶尖美业在哪里啊,我有事要去这个地方
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?