Java里String.split需要注意的用法】的更多相关文章

我们常常用String的split()方法去分割字符串,有两个地方值得注意: 1. 当分隔符是句号时("."),需要转义: 由于String.split是基于正则表达式来分割字符串,而句号在正则表达式里表示任意字符. //Wrong: //String[] words = tmp.split("."); //Correct: String[] words = tmp.split("\\."); 所以,假设分隔符在正则表达式里有一定的意义时,需要格…
前些天面试遇到一个非常难的关于String的问题,"String为何被设计为不可变的"?类似的问题也有"String为何被设计为final?"个人认为还是前面一种问法更准确,设计成final仅仅保证了String类不能被继承,而Immutable相对于final要严格的多,关于对Immutable的理解可以参考这里. 下文主要翻译自:http://java67.blogspot.sg/2014/01/why-string-class-has-made-immutab…
转载自:http://blog.163.com/zs_note/blog/static/199386112201110804233558/ 在java.lang包中有String.split()方法,返回是一个数组.  1.“.”和“|”都是转义字符,必须得加"\\"; 如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split("."); 如果用“|”作为分隔的话,必须…
Java中的split方法以"."切割字符串时,需要转义 String str[] = s.split("\\.");…
代码: String str = "the music made it hard to concentrate"; String delims = "[ ]+"; String[] tokens = str.split(delims); 结果为: the, music, made, it, hard, to, concentrate 原因: String.split(String regex):参数是一个正则表达式 转自:http://pages.cs.wisc.e…
Java里面有对象和对象的引用的概念,在String方面,==比较的是引用,equals比较的是对象的具体值. String s1 = new String("abc");String s2 = new String("abc");System.out.println(s1 == s2);System.out.println(s1.equals(s2)); 上面的代码将打印一个false和一个true.这个很容易理解,原因就是s1和s2分别是两个不同String对象…
[1]单个符号作为分隔符         String address="上海|上海市|闵行区|吴中路";      String[] splitAddress=address.split("\\|"); //如果以竖线为分隔符,则split的时候需要加上两个斜杠[\\]进行转义      System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);     …
//错误的做法String ip="192.168.11.23"; String[] spstr_IP=ip.split(".");//这种方式无法拆分在ip字符串 //可以正确拆分的做法String ip="192.168.11.23"; String[] spstr_IP=ip.split("\\.");…
特殊符号分割时需加[].如下图…
在java doc里有 String[] java.lang.String.split(String regex) Splits this string around matches of the given regular expression. This method works as if by invoking the two-argument split method with the given expression and a limit argument of zero. Tra…