2015062503 - StringUtils源码分析

     研究apache.common.lang3包下的StringUtils类

     /*判断字符串为null或者字符串长度为0*/

     public static boolean isEmpty(final CharSequence cs) {

          return cs == null || cs.length() == 0;

     }

     /*说明1:java.lang 接口 CharSequence,所有已知实现类: CharBuffer, Segment, String, StringBuffer, tringBuilder*/
     /*说明2:为什么使用接口 CharSequence类型变量,凡是父类出现的地方都可以使用子类替换掉父类*/
     /*说明3:判断字符串为空的根据是,字符串为null或者字符串长度为0*/
     /*说明4:为什么CharSequence的子类可以使用length方法呢? 因为CharSequence接口定义四个只读接口,有 int length() 返回此字符序列的长度。*/

       //StringUtils.isEmpty(null)  = true
       //StringUtils.isEmpty("")  = true
       //StringUtils.isEmpty(" ")  = false         //为什么不为true,是因为很多空格组成的字符串长度不等于0,所以为false
       //StringUtils.isEmpty("bob")  = false
       //StringUtils.isEmpty("  bob  ") = false


      /*判断字符串不为null并且字符串长度不为0*/
      public static boolean isNotEmpty(final CharSequence cs) {
              return !isEmpty(cs);
      }

      //StringUtils.isNotEmpty(null)  = false
      //StringUtils.isNotEmpty("")  = false
      //StringUtils.isNotEmpty(" ")  = true     //需要理解此处,不过理解起来并不难
      //StringUtils.isNotEmpty("bob")  = true
      //StringUtils.isNotEmpty("  bob  ") = true

      public static boolean isNotEmpty(final CharSequence cs) {
            return cs != null && cs.length() > 0;
      }

     /*说明,其实empty使用的情况不多,因为它涉及没有将多个空格符的情况当在里面去思考,即"      "判定为true*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值