java的split函数问题

importjava.util.Scanner;publicclassAbc{publicstaticvoidmain(Stringargs[]){Scannerscan... import java.util.Scanner;
public class Abc {
public static void main(String args[]){
Scanner scan=new Scanner(System.in);
String str="1.2.3.4";
String s[]=str.split(".");
System.out.println(s.length);
}
}
为什么输出是0不是4
展开
 我来答
caoxuexin898
2012-10-29 · TA获得超过245个赞
知道小有建树答主
回答量:304
采纳率:0%
帮助的人:133万
展开全部
String s[]=str.split("\\.");这是正解~split的参数是正则表达式~呵呵
追问
转义字符不应该是\.吗?
追答
啊~~=。=~不是\  是~\\呵呵
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
little_pepper
2012-10-29
知道答主
回答量:37
采纳率:0%
帮助的人:18.3万
展开全部
split 方法参数是正则表达式,你这个. 不能直接写成.
String s[] =str.split("\\.");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
殇wanan
2012-10-29 · 超过24用户采纳过TA的回答
知道答主
回答量:133
采纳率:0%
帮助的人:59.4万
展开全部
你这个“.”里面要加分隔符//,不然肯定是0,而且加上以后也不会是4,分成了四个,每个长度是1。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a5ec2859d
2012-10-29 · TA获得超过147个赞
知道答主
回答量:168
采纳率:0%
帮助的人:81.4万
展开全部
不可能是零,应该是四数,你把scanner去掉呢,我发现你也没有用到这个类你还new出来没用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jinchao100
2012-10-29
知道答主
回答量:33
采纳率:0%
帮助的人:13万
展开全部
java中"." 作为 Predefined character 表示 any character 如果想要得到 "." 需要转义 一下.
String s[]=str.split("\\.");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式