当前位置: 首页 > news >正文

富阳网站定制开发哪家公司好珠海网站建设网络推广

富阳网站定制开发哪家公司好,珠海网站建设网络推广,地方门户网站管理系统,聊城网站建设信息1.引言 split方法很常用,记得我入职公司的时候,第一道笔试题就是关于字符串的拆分拼装等,这也足以说明,大公司对这些方法的重视程度. 其实我们平时一般用到的都是这些方法最简单的用法,但如果你不了解他的实现原理,碰到某些特殊问题终究是会被卡住的,于是就产生了所谓的bug,而…1.引言 split方法很常用,记得我入职公司的时候,第一道笔试题就是关于字符串的拆分拼装等,这也足以说明,大公司对这些方法的重视程度. 其实我们平时一般用到的都是这些方法最简单的用法,但如果你不了解他的实现原理,碰到某些特殊问题终究是会被卡住的,于是就产生了所谓的bug,而这也就是大神和菜鸟的区别之一吧.广度是一方面,但真正看一个程序员是不是牛逼,重要的还是看他的深度,比如这个split的用法,如果你还停留在简单的用法上,不妨看看后面,也看看你的深度,与君共勉! 2.split用法 先上一个例子: 1.最普通的用法String str1 aa,bb;String[] split1 str1.split(,);System.out.println(split1.length);//这个结果是2,都知道的 2.比较普通的用法String str2 ;String[] split2 str2.split(,);System.out.println(split2.length);//这个结果是1,但部分人会认为这个的结果是0,//这个为什么是1,我会在后面说 3.看起来比较奇怪的用法String str3 ,;String[] split3 str3.split(,);System.out.println(split3.length);//这个结果是0,但部分人会认为结果是1,部分人会认为结果是2.//这个又为什么是0,我也会在后面说3.split源码分析 split方法准确的来说有两个参数(String regex, int limit),只不过平时我们用的,是split的一个重载方法(String regex),默认是把第二个参数设置为0,源码如下: public String[] split(String regex) {return split(regex, 0);}public String[] split(String regex, int limit) {具体实现...}3.1.参数解释—regex 1.如果表达式不匹配输入的任何内容返回的数组只具有一个元素即此字符串。尤其注意空字符串这种情况他也是一个字符串 2.可以匹配的情况下每一个字符串都由另一个匹配给定表达式的子字符串终止或者由此字符串末尾终止数组中的字符串按照他们在此字符串出现的顺序排列 3.2.参数解释—limit 该参数用于控制模式匹配使用的次数可以影响到数组的长度 1.limit0: 模式匹配将被最多应用n-1次数组的长度将不会大于n数组的最后一项将包含所有超出最后匹配的定界符的输入。 2.limit0: 模式匹配将应用尽可能多的次数而且数组的长度是任何长度。 3.lilmit0: 模式匹配将被应用尽可能多的次数数组可以是任何长度并且结尾空字符串将被丢弃。 3.3.不同limit值的情况下的split结果验证 假设有字符串aa,bcd,eef, 3.3.1.limit0,regex, 尾部的逗号直接被忽略头部的逗号不会忽略 String line ,aa,bcd,eef,,,; String[] split line.split(,,0); System.out.println(split.length);//43.3.2.limit2,regex, 总长度被限制成最大2个 String line ,aa,bcd,eef,,,; String[] split line.split(,,2); System.out.println(split.length);//23.3.3.limit100,regex, 总长度被限制成最大100个 但结果是7个说明当limit大于0并且远大于应该有的长度时头部和尾部的逗号都没有被忽略 String line ,aa,bcd,eef,,,; String[] split line.split(,,100); System.out.println(split.length);//73.3.4.limit-1,regex, 结果是7个说明当limit小于0时头部和尾部的逗号都没有被忽略 String line ,aa,bcd,eef,,,; String[] split line.split(,,100); System.out.println(split.length);//74.扩展 谷歌的guava包也有对split的重写返回的是list数组集合. 具体使用如下 dependencygroupIdcom.google.guava/groupIdartifactIdguava/artifactIdversion24.1-jre/version/dependencyString line ,aa,bcd,eef,,,; ListString split2 Splitter.on(,).splitToList(line); System.out.println(split2.size());//7根据结果我们可以看到谷歌的split默认是头部和尾部的逗号都没有被忽略相当于java包下split的limit设置为-1 相比下java包下split的limit默认不写就是0即头部逗号没有被忽略而尾部逗号是被忽略的 一定要注意区分
http://www.pierceye.com/news/506040/

相关文章:

  • 网站的费用多少wordpress替换js为外部引用
  • 工业设备网站源码国家图书馆网站建设介绍
  • 南昌制作网站软件站长统计app软件
  • 商城网站建设公司哪家好上海环球金融中心简介
  • 肃宁县做网站价格wordpress获取站点标题
  • 公司做网站效果怎么样推荐网站建设话术
  • 邱县网站建设河北seo网络优化师
  • iis5.1怎么新建网站中国生意网
  • 教你做吃的网站厦门市集美区建设局网站
  • 电子商务网站建设需要青岛网站建设邓巴迪
  • 网站建设考虑的因素建设网站地图
  • 天津塘沽网站建设新网官方网站
  • 做本地团购网站国外产品网站
  • 湖北省两学一做网站国外浏览器app下载
  • 遵义网站建设公司巴彦淖尔市网站制作
  • 后台管理系统网站模板合作网站登录制作
  • 腾讯云网站备案流程seo优化实训总结
  • 那个网站有免费的模板wordpress首页模板文件
  • 阿里云主机可以放几个网站手机上自己设计广告的软件
  • 南通公司企业网站建设淘宝网店制作
  • 长沙网站建设推广太仓网站建设企业网站
  • 加强网站微信信息编辑队伍建设网站设计 北京店
  • 广州网站建设有限公司程序员入门先学什么
  • 资源下载类网站如何做外链北京有几家宽带网络公司
  • 个人网站要有什么网页设计与制作初学者教程
  • 宁波品牌网站建设芗城区建设局网站
  • 仿卢松松博客网站源码购买网站空间多少钱
  • 无锡网站推微信公众号文章里好看的图片在哪个网站做
  • 做网站建设费用预算龙岩市建筑设计院
  • 网站做适配多少钱浙江建设厅特种考试查询