问题: 对于字符串 “boo:and:foo”,regex为o,limit为5时,返回:{ “b”,“”,“:and:f”,“” } ,结果是如何实现的? 答: 对于这个String s[] = “boo:and:foo”.split(“o”,5);正则表达式拆分字符串,具体实现情况为:对于字符串 “boo:and:foo”,limit为5时,splite方法首先去字符串里查找regex——o,然后把o做为分隔符,逐个把o去掉并且把字符串分开,比如,发现b后面有一个o,于是把这个o去掉,并且把字符串拆成”b”,“o:and:foo”两个字符串(注意:b后面的两个o已经去掉了一个),接下来看”o:and:foo”这个字符串,第一个字符就是o,于是o前面相当于一个空串,把这个o去掉,”o:and:foo”被分开成”“,“:and:foo”这样两个字符串,以此类推循环5次就是splite(“o”,5)方法的作用。 其实这个方法一般这样用: String[] arr = “11,22,33,44”.splite(“,”); 从而方便的得到一个字符串数组:arr={“11”,“22”,“33”,“44”};