Java使用split()按.切分出错解决方法
2017-09-24 22:06
351 查看
Java使用split(“.”)出错抛出ArrayIndexOutOfBoundsException
使用情景:
今天在项目中使用split截取图片时抛出了一个截取代码后如下:@Test public void testSpit() { String s[] = "boy.jpg".split("."); for (int i = 0; i <= s.length; i++) { System.out.println(s[i]); } }
执行上段代码抛出以下异常:
java.lang.ArrayIndexOutOfBoundsException: 0 at Junit5.testSpit(Junit5.java:92) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:289)
解决办法:
然后我去查api才发现,split()方法接受的是正则表达式,所以传入的”.”就变成了正则表达式的关键字,表示除换行符之外的任意字符。所以,这里需要转义”\.”或”[.]”。
@Test public void testSpit() { String s[] = "boy.jpg".split("\\."); for (int i = 0; i <s.length; i++) { System.out.println(s[i]); } }
搞定!
更新时间:2017/9/2 23:03:19
相关文章推荐
- Java使用split()按"."切分出错解决方法
- Java的split方法使用多种分隔符切分字符串
- 关于Java中使用split()方法时报ArrayIndexOutOfBoundsException数组越界异常解决方法
- 使用四季首页调用后 首页FLASH图片调用连接出错,解决方法
- 还原数据库时出错“无法处理数据库 ,因为它正由此会话使用”的解决方法
- java中string对象中的split方法的使用
- 使用 MMAnalyzer 发现内存不足 (out of memory java heap)解决方法
- xml parser jdk版本切换后出错,解决方法set 应用服务器 jdk/optional java vm arguments:
- 【转】Java常用方法使用心得,split,replaceAll
- 在JAVA中, 在使用String.split方法时要注意的一些特殊分隔字符串
- 使用VC2003项目修改版本号和版权信息出错的解决方法
- 线程中使用UpdateData出错解决方法
- java使用String.split方法时遇到的问题(转载)
- Java使用Oracle遇到的最大游标超出问题及其解决方法
- 解决java_me_platform_sdk3.0出错 MIDP: runMidlet.exe - 应用程序错误的方法
- javabean操作文件正确,但是Jsp调用javabean时文件路径出错问题解决之JavaBean访问本地文件实现路径无关实现方法
- 使用用户控件时,网站运行没有问题,但生成网站时却出错:命名空间“ASP”中不存在类型或命名空间名称“ascx_ub_weightbar_ascx” 的解决方法
- java中使用ObjectOutputStream和ObjectInputStream时产生的“invalid stream header”错误解决方法
- 使用WORD时,出错,提示:检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败解决方法
- Java使用Oracle遇到的最大游标超出问题及其解决方法