本文主要是介绍Java之split的用法与startWith的用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天在遇到一个问题,给你一串字符串,然后按照指定的分隔符进行分割,然后在返回字符串数组。于是想到了在java.lang下的String.split()方法。但是结果却不可以,坑死宝宝了。
split用法
看一下Java API
看一下代码
通过上面两张图我们可以看出,它返回的是一个字符串数组。
stringObj.split([separator,[limit]])
。
先介绍一下参数:
stringObj:这个是需要进行分割的String对象或者文字,它不会被split方法进行修改。<必选项>
separator:字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。<可选项>
limit:该值用来限制返回数组中的元素个数(也就是最多分割成几个数组元素,只有为正数时有影响)<可选项>
下面看一下使用:
示例一:
String var1 = "S;n;o;w;Wi;tch";
String[] var2 = var1.split(";");
for (int i = 0; i < var2.length; i++) {System.out.println(var2[i]);
}
输出结果为:
示例二:
String var1 = "S;n;o;w;Wi;tch";
String[] var2 = var1.split(";", 3);
for (int i = 0; i < var2.length; i++) {System.out.println(var2[i]);
}
看一下输出结果:
通过上面的输出结果,我们可以看出limit的作用,就是用来限制返回数组的个数。当这个数字为负数,则没有效果,小伙伴们可以自行测试。
示例三:
String var3 = "192.168.0.216";
String[] var4 = var3.split(".");
for (int j = 0; j < var4.length; j++) {System.out.println(var4[j]);
}
但是,今天我就是遇到这个问题,没有输出结果,原来这些需要进行转义,把var3.split(".")
换成var3.split("\\."
);就可以了。
split用法注意:
(1)当用"."
进行分割滴时候,必须写成String.split("\\.")
,而不能写成String.split(".")
。
(2)当用"|"
进行分割滴时候,必须写成String.split("\\
|”),而不能写成String.split(“|”)。
(3)当在一个字符串中有多个分隔符,可以用"|"
作为连字符,比如:String var="z-1 and x-2 or c-3"
,如果想要分割这三个,那么就可以写成这样子String.split("and|or")
。
(4)当分隔符为"*"
,"+"
,如果写成这样子String.split("+")
,String.split("*")
,会出现错误。①:String.split("//+")
,String.split("//*)
,输出结果为:字符串本身,不做任何修改。②:String.split("\\+")
,String.split("\\*")
这样写就是进行了转义,输出结果就是按"+"
,"*"
进行滴分割。
startsWit用法:
首先我们来看一下Java API
看一下代码
我来解释一下:startsWith(String str)就是来检查你所要形参参数与你字符串开头是否相同。startsWith(Sring str,int Index)其中Index指的是,你所要从原字符串下标第几个与所需要形参参数作对比。当Index为0时,与startsWith(Sring str)效果一样。
用法很简单,看一下代码:
String st1 = "snowWitch";
System.out.println("st1:" + st1.startsWith("no", 1));
String st2 = "snowWitch";
System.out.println("st1:" + st2.startsWith("no"));
String st3 = "snowWitch";
System.out.println("st2:" + st3.startsWith("sn"));
String st4 = "snowWitch";
System.out.println("st4:" + st4.startsWith("sn", 0));
String st5 = "snowWitch";
System.out.println("st5:" + st5.startsWith("sn", 1));
运行结果如下:
用法就是这样,如果有不明白滴地方,可以留言哦~
这篇关于Java之split的用法与startWith的用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!