`
weixl
  • 浏览: 22426 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

关于java中split(".")后数组越界问题

阅读更多
     String str = "123.123";
     String[] arr = str.split("\\.");
     System.out.println(arr[0]);

     若第二行String[] arr = str.split("."); 则数组越界,程序终止。
      . 号需要转义,看看jdk源码知道String 的split方法如下:
  public String[] split(String regex) {
        return split(regex, 0);
    }
  public String[] split(String regex, int limit) {
return Pattern.compile(regex).split(this, limit);
  }
    调用了正则表达式, "." 号在正则表达式中时 全字符匹配的意思.......
    所以java中经常会出现split(".")[0]后数组越界的问题了。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics