不知道大家判断一个字符串是否为空用的是不是TextUtils.isEmpty(String str);这个方法。过去我几乎每个判断都会使用。不过后来看了源码之后就再也不想用了,还不如自己写一个方法直接调用。

下面是这个方法的源码,大家看看 ,估计看一眼就知道为什么不想用了。

/**

* Returns true if the string is null or 0-length.

* @param str the string to be examined

* @return true if str is null or zero length

*/

public static boolean isEmpty(@Nullable CharSequence str) {

if (str == null || str.length() == 0)

return true;

else

return false;

}

上面就是Android 判空的源码了,直接查看的。这个方法很好理解就是判断是不是null然后判断长度是不是0.通过这个来判断一个字符串是不是空。

那么问题来了如果一个字符串只包含一个空格,那么这个字符串是不是为空呢。这个方法的返回是非空的。

可是问题是我们很多时候需要如果一个字符串全是空格也应该返回空,做个简单的修改就ok了。

public static boolean isEmpty(@Nullable CharSequence str) {

if (str == null || str.length() == 0 ||str.toString().trim().length()==0) {

return true;

} else {

return false;

}

}这样就能达到效果了,自定义个工具类,可以方便使用了

android 判断空,Android空判断的坑相关推荐

  1. JavaScript 判断空对象空数组

    JavaScript 判断空对象空数组 一.为什么判断空数组空对象会比较麻烦 二.判断空数组的方法 三.判定空对象的方法 四.一个判断参数为空的函数封装 来源: https://www.jianshu ...

  2. java equals 判断空_Java 判断字符串是否为空的三种方法与性能分析

    [java中判断字符串是否为数字的三种方法  1>用JAVA自带的函数 public static boolean isNumeric(String str){   for (int i = s ...

  3. shell中判断空字符串和有趣的空字符串

    Introduction Shell 中判断空字符串 以及有趣的空字符串 判断字符串是否为空 Example1 if [[ -z "$str" ]] thenecho " ...

  4. Android MultiDex实践:如何绕过那些坑?

    本文是我的同事徐冬投稿,介绍他在方法数到达65k上限后,应用官方MultiDex方案时踩过的一些坑,以及如何解决这些棘手问题的实践过程. 前言 Android应用65k方法数的限制一直为广大开发者所诟 ...

  5. js中判断空数组和空对象的方法

    复习的时候做一些学习的笔记总结. javascript的值的类型: 原始值:number.string.boolean.undefined.null.symbol(ES6).bigint(ES10) ...

  6. Android底部导航栏切换页面填坑

    ** Android底部导航栏切换页面填坑 ** 这个效果的实现关键点就是给选项赋予两种状态,focused和normal,在主程序中用监听判断是否被选中,就给被选中的选项设focused为true, ...

  7. Android Socket 发送广播包的那些坑

    转载文章,文章原始出处:http://ticktick.blog.51cto.com/823160/1707858 Socket广播包经常被用于局域网内的两台设备之间互相发现和消息传递,在Androi ...

  8. Android桌面快捷方式那些事与那些坑

    原文来自http://blog.zanlabs.com/2015/03/14/android-shortcut-summary/ 将近二个多月没写博客了. 之前一段时间一直在搞红包助手,就没抽时间写博 ...

  9. android小米定位,Android填坑系列:在小米系列等机型上放开定位权限后的定位请求弹框示例...

    背景 近期因实际项目需要,在特定操作下触发定位请求,取到用户位置及附近位置. 问题: 经初步选型,最终决定接入百度定位,按照百度定位SDK Android文档,接入过程相对顺利. 但随后发现,在小米系 ...

最新文章

  1. 2022-2028年中国交通建设PPP模式深度分析及发展战略研究报告(全卷)
  2. 如何进行相机的绝对位置估计?
  3. 云安全与我们未来的网络息息相关……
  4. Spinner弹出框遮挡住显示框的解决办法
  5. VS2005 TS SP1压缩整合完整版BT下载
  6. NoSQL之Cassandra
  7. 面试官:@Transactional 注解是如何实现的?面试必问!
  8. VMware Workstation macOS Unlocker 下载慢的解决办法
  9. Android空调遥控器代码,空调代码—万能遥控器要如何正确设置空调代码?
  10. python arp 网关_python arp欺骗伪造网关代码详解
  11. 中国联通5G-NR 900MHz基站设备技术白皮书(2022)
  12. Android6.0动态壁纸,全局透明动态壁纸
  13. Pyke 逻辑编程入门(2):表示事实的陈述句
  14. Linux下使用Netfilter框架编写内核模块(统计协议层ping特定地址丢包数)
  15. 【Python】多文件夹图片重命名
  16. EDA程序设计--计时器设计
  17. 熬夜整理两万字Python知识点
  18. 智能手机上的常用传感器
  19. Linux系统结构与虚拟机使用
  20. redhat linux 关闭服务,Redhat用户使用chkconfig关闭不必要服务

热门文章

  1. java jna调用dll文件_关于java jna调用dll的问题
  2. threejs加载3D模型例子
  3. python字符串格式化_Python3 字符串格式化
  4. __thread 和 __typeof__关键字
  5. WINCE6补丁安装
  6. python中什么是数据驱动_利用Python如何实现数据驱动的接口自动化测试
  7. python抽卡游戏_【python爬虫】原神公测预抽卡活动自动化抽卡脚本(一小时免登陆)...
  8. LSGO软件技术团队2015~2016学年第十七周(1221~1227)总结
  9. 【转】ABP源码分析十三:缓存Cache实现
  10. 【转】2.1【MySQL】运行原理(一):查询sql的执行过程及MySQL架构分析