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

企业 网站 推广做炫舞情侣头像动态图网站

企业 网站 推广,做炫舞情侣头像动态图网站,桂林生活网二手房市场,百度的网站字符串#xff0c;是Java中最常用的一个数据类型了。我们在日常开发时候会经常使用字符串做很多的操作。比如字符串的拼接、截断、替换等。这一篇文章#xff0c;我们介绍一个比较常见又容易被忽略的一个操作#xff0c;那就是移除字符串中的空格。其实#xff0c;在Java中… 字符串是Java中最常用的一个数据类型了。我们在日常开发时候会经常使用字符串做很多的操作。比如字符串的拼接、截断、替换等。这一篇文章我们介绍一个比较常见又容易被忽略的一个操作那就是移除字符串中的空格。其实在Java中从字符串中删除空格有很多不同的方法如trimreplaceAll等。但是在Java 11添加了一些新的功能如strip、stripLeading、stripTrailing等。大多数时候我们只是使用trim方法来删除多余的空格。但是好像很多人并没有去思考过是否有更好的方式呢当然trim()在大多数情况下都工作得很好但是Java中有许多不同的方法。每一种都有自己的优点和缺点。我们如何决定哪种方法最适合我们呢接下来我们将介绍几种方法并对比下他们的区别和优缺点等。在java中从字符串中删除空格的不同方法首先我们来看一下想要从String中移除空格部分有多少种方法作者根据经验总结了以下7种JDK原生自带的方法不包含第三方工具类库中的类似方法trim() : 删除字符串开头和结尾的空格。strip() : 删除字符串开头和结尾的空格。stripLeading() : 只删除字符串开头的空格stripTrailing() : 只删除字符串的结尾的空格replace() : 用新字符替换所有目标字符replaceAll() : 将所有匹配的字符替换为新字符。此方法将正则表达式作为输入以标识需要替换的目标子字符串replaceFirst() : 仅将目标子字符串的第一次出现的字符替换为新的字符串需要注意的最重要的一点是在Java中String对象是不可变的这意味着我们不能修改字符串因此以上所有的方法我们得到的都是一个新的字符串。接下啦我们分别针对以上这几个方法学习下用法了解下其特性。PS本文代码都是使用在线运行工具https://www.jdoodle.com/online-java-compiler/ 执行的因为我的测试机并未安装Java 11并且Unicode字符也不完整。如果大家也想实验建议使用在线工具选择对应的JDK即可。trimtrim()是Java开发人员最常用的删除字符串开头和结尾的空格方法。其用法也比较简单public class StringTest {public static void main(String[] args) {String stringWithSpace     Hollis   Is   A   Java   Coder   ;StringTest.trimTest(stringWithSpace);}private static void trimTest(String stringWithSpace){System.out.println(Before trim : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.trim();System.out.println(After trim : \  stringAfterTrim  \);}} 输出结果Before trim :    Hollis   Is   A   Java   Coder   After trim : Hollis   Is   A   Java   Coder 如上使用trim之后原字符串中开头和结尾部分的空格内容都被移除掉了。但是不知道大家有没有思考过trim方法移除的空白内容都包含哪些东西除了空格以外还有其他的字符吗其实trim移除的空白字符指的是指ASCII值小于或等于32的任何字符( U0020 )其中包含了空格、换行、退格等字符。strip()不知道大家有没有注意到在Java 11的发行版中添加了新的strip()方法来删除字符串中的前导和末尾空格。已经有了一个trim方法为什么还要新增一个strip呢这其实是是因为trim方法只能针对ASCII值小于等于32的字符进行移除但是根据Unicode标准除了ASCII中的字符以外还是有很多其他的空白字符的。而且为了识别这些空格字符从Java 1.5开始还在Character类中添加了新的isWhitespace(int)方法。该方法使用unicode来标识空格字符。你可以在http://jkorpela.fi/chars/spaces.html 了解更多关于unicode空格字符的信息。而在Java 11中新增的这个strip方法就是使用这个Character.isWhitespace(int)方法来判断是否为空白字符并删除它们的下面我们来看一个使用strip例子public class StringTest {public static void main(String args[]) {String stringWithSpace \u2001    Hollis   Is   A   Java   Coder    \u2001;System.out.println(  \u2001   is space :    Character.isWhitespace(\u2001));StringTest.stripTest(stringWithSpace);}private static void stripTest(String stringWithSpace){System.out.println(Before strip : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.strip();System.out.println(After strip : \  stringAfterTrim  \);}} 我们在字符串前后都增加了一个特殊的字符\u2001这个字符是不在ASCII中的经过Character.isWhitespace判断他是一个空白字符。然后使用strip进行处理输出结果如下  is space : trueBefore strip :    Hollis   Is   A   Java   Coder   After strip : Hollis   Is   A   Java   Coder 所以Java 11 中的 strip 方法要比trim方法更加强大他可以移除很多不在ASCII中的空白字符判断方式就是通过Character.isWhitespace方法。trim 和 strip 方法的区别上面我们介绍了两个都可以移除字符串开头和结尾的方法分别是trim 和 strip再来对比下他们的区别stripLeading() 和 stripTrailing()stripLeading()和stripTrailing()方法也都是在Java 11中添加的。作用分别是删除字符串的开头的空格以及删除字符串的末尾的空格。与strip方法类似stripLeading、stripTrailing也使用Character.isWhitespace(int)来标识空白字符。用法也和strip类似public class StringTest {public static void main(String args[]) {String stringWithSpace \u2001    Hollis   Is   A   Java   Coder    \u2001;System.out.println(  \u2001   is space :    Character.isWhitespace(\u2001));StringTest.stripLeadingTest(stringWithSpace);StringTest.stripTrailingTest(stringWithSpace);}private static void stripLeadingTest(String stringWithSpace){System.out.println(Before stripLeading : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.stripLeading();System.out.println(After stripLeading : \  stringAfterTrim  \);}private static void stripTrailingTest(String stringWithSpace){System.out.println(Before stripTrailing : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.stripTrailing();System.out.println(After stripTrailing : \  stringAfterTrim  \);}} 输出结果  is space : trueBefore stripLeading :    Hollis   Is   A   Java   Coder   After stripLeading : Hollis   Is   A   Java   Coder   Before stripTrailing :    Hollis   Is   A   Java   Coder   After stripTrailing :    Hollis   Is   A   Java   Coder replace移除字符串中的空白字符除了使用trim、strip以外还有一个办法那就是使用replace方法把其中的空白字符替换掉。replace是从java 1.5中添加的可以用指定的字符串替换每个目标子字符串。此方法替换所有匹配的目标元素使用方式如下 public class StringTest {public static void main(String args[]) {String stringWithSpace   Hollis   Is   A   Java   Coder  ;StringTest.replaceTest(stringWithSpace);}private static void replaceTest(String stringWithSpace){System.out.println(Before replace : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.replace( , );System.out.println(After replace : \  stringAfterTrim  \);}} 结果Before replace :   Hollis   Is   A   Java   Coder  After replace : HollisIsAJavaCoder 可见以上使用replace方法可以替换掉字符串中的所有空白字符。特别需要注意的是replace方法和trim方法一样只能替换掉ASCII中的空白字符。replaceAllreplaceAll是Java 1.4中添加的最强大的字符串操作方法之一。我们可以将这种方法用于许多目的。使用replaceAll()方法我们可以使用正则表达式来用来识别需要被替换的目标字符内容。使用正则表达式就可以实现很多功能如删除所有空格删除开头空格删除结尾空格等等。我们只需要用正确的替换参数创建正确的正则表达式。一些正则表达式的例子如下:\s   所有的空白字符^\s      字符串开头的所有空白字符\s$      字符串结尾的所有空白字符 注意在java中要添加/我们必须使用转义字符所以对于\s 我们必须使用 \\spublic class StringTest {public static void main(String args[]) {String stringWithSpace   Hollis   Is   A   Java   Coder  ;StringTest.replaceAllTest(stringWithSpace, );StringTest.replaceAllTest(stringWithSpace,\\s);StringTest.replaceAllTest(stringWithSpace,^\\s);StringTest.replaceAllTest(stringWithSpace,\\s$);}private static void replaceAllTest(String stringWithSpace,String regex){System.out.println(Before replaceAll with  regex : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.replaceAll(regex, );System.out.println(After replaceAll with  regex : \  stringAfterTrim  \);}} 结果Before replaceAll with  :   Hollis   Is   A   Java   Coder  After replaceAll with  : HollisIsAJavaCoderBefore replaceAll with \s:   Hollis   Is   A   Java   Coder  After replaceAll with \s: HollisIsAJavaCoderBefore replaceAll with ^\s:   Hollis   Is   A   Java   Coder  After replaceAll with ^\s: Hollis   Is   A   Java   Coder  Before replaceAll with \s$:   Hollis   Is   A   Java   Coder  After replaceAll with \s$:   Hollis   Is   A   Java   Coder 正如我们所看到的如果将replaceAll()与适当的正则表达式一起使用它将是非常强大的方法。replaceFirstreplaceFirst方法也是在java 1.4中添加的它只将给定正则表达式的第一个匹配项替换为替换字符串。如果您只需要替换第一次出现的情况那么这个方法非常有用。例如如果我们只需要删除前导空格我们可以使用\\s或^\\s。我们还可以通过使用\\s$正则表达式使用此方法来删除末尾空格。因为这个表达式将只匹配行的最后一个空格。因此最后的空格被认为是这个方法的第一个匹配。让我们举一个从字符串中删除前导和尾随空格的例子public class StringTest {public static void main(String args[]) {String stringWithSpace   Hollis   Is   A   Java   Coder  ;StringTest.replaceFirstTest(stringWithSpace, );StringTest.replaceFirstTest(stringWithSpace,\\s);StringTest.replaceFirstTest(stringWithSpace,^\\s);StringTest.replaceFirstTest(stringWithSpace,\\s$);}private static void replaceFirstTest(String stringWithSpace,String regex){System.out.println(Before replaceFirst with  regex : \  stringWithSpace  \);String stringAfterTrim  stringWithSpace.replaceFirst(regex, );System.out.println(After replaceFirst with  regex : \  stringAfterTrim  \);}} 结果Before replaceFirst with  :   Hollis   Is   A   Java   Coder  After replaceFirst with  :  Hollis   Is   A   Java   Coder  Before replaceFirst with \s:   Hollis   Is   A   Java   Coder  After replaceFirst with \s: Hollis   Is   A   Java   Coder  Before replaceFirst with ^\s:   Hollis   Is   A   Java   Coder  After replaceFirst with ^\s: Hollis   Is   A   Java   Coder  Before replaceFirst with \s$:   Hollis   Is   A   Java   Coder  After replaceFirst with \s$:   Hollis   Is   A   Java   Coder 总结本文介绍了7种移除字符串中的空白字符的方法。想要直接移除掉字符串开头的空白字符可以使用stripLeading、replaceAll和replaceFirst想要直接移除掉字符串末尾的空白字符可以使用stripTrailing、replaceAll和replaceFirst想要同时移除掉字符串开头和结尾的空白字符可以使用strip、trim想要移除掉字符串中的所有空白字符可以使用replace和replaceAll而Java 11种新增的strip、stripTrailing以及stripLeading方法可以移除的字符要比其他方法多他可以移除的空白字符不仅仅局限于ASCII中的字符而是Unicode中的所有空白字符具体判断方式可以使用Character.isWhitespace进行判断。 往期推荐 推荐一款开源数据库设计工具比PowerDesigner更好用Socket粘包问题的3种解决方案最后一种最完美SpringBoot集成Google开源图片处理框架贼好用关注我每天陪你进步一点点
http://www.sadfv.cn/news/112907/

相关文章:

  • 网站开发精灵无极电影网叛逆者
  • ftp上传wordpress网站要多久国内建站源码
  • 网站设计方案案例上海手机网站建设报价表
  • 塘沽做网站的公司网页设计蛋糕图片素材
  • 北流市建设局网站网站建设重庆招聘
  • 织梦网站 伪静态wordpress安装后只显示英文站
  • 创意合肥网站建设搜索引擎推广的常见形式有
  • 学做网站要学什么东西那家网站做照片书好
  • 备案号 不放在网站首页灞桥微网站建设
  • 印刷网站开发的可行性报告成都做网站建设公司
  • 培训行业网站建设是什么快印店网站建设84wzjs
  • 高水平的大连网站建设公司网站的主页优化
  • 搜索网站排名优化wap网站生成
  • ps做好的网站如何做链接游戏搭建平台
  • 杭州网站制作报价网站制作是什么公司
  • 照片做视频模板下载网站网络规划设计师教程第二版电子书
  • 做海报的免费网站网络营销外包网络推广
  • 有男女做暖暖的视频网站seo专员工资是固定的吗
  • 长春电商网站建设价格广东建设监理协会网站
  • 扁平化 网站黄页号码怎么取消标记
  • 视频网站开发平台线上兼职
  • 福田建网站费用晋城网站建设价格
  • 可信赖的购物网站建设seo是哪个英文的缩写
  • 网站建设验收期线下推广小组所述的推广方案是针对哪两个团体
  • 企业网站开发制作wordpress数据库丢失
  • 成都网站制作售后网络广告的类型有哪些
  • 怎么制作做网站创做阿里巴巴网站流程
  • 复兴区建设局网站个人建站提供软件下载
  • 兰山区建设局网站网站制作与网站建设pdf
  • 广告设计怎么接单建站网站关键词优化