这篇文章主要介绍“java怎么判断integer是否为空”,在日常操作中,相信很多人在java怎么判断integer是否为空问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么判断integer是否为空”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!我们在使用JDK库的时候,一定要注意认真的读一下JDK中方法的含义和它的返回值。有些返回值可能表示这个操作是否成功,有的返回值可能是方法操作的结果。我们看两个常见的例子:先看一个文件删除的例子,delete方法是有返回值的,所以我们在调用delete方法之后,一定要判断一下返回值,看是否删除成功。再看一个常见的String中字符替换的例子:我们要记住,String是不可变的,所以它的replace方法,会返回一个替换过后的String,但是原String是不变的,所以我们需要将返回值重新赋值。NullPointerException应该是最最常见的运行时异常了。怎么避免这个异常呢?我们要做的就是在调用object的方法时候,一定要判断这个object是不是为空。在JDK8之后,我们引入了Stream操作:Stream操作的过程中,我们需要注意stream中的元素是否为空。有时候,我们可能觉得已经判断是为空了,但是条件判断不准确,导致未知的异常,看下面这个例子:这个例子是用来查找collection中到底有多少元素和object相同,如果两者都为空,也记为相同。但是上面的例子有一个漏洞,它没有考虑element ==null 而 object !=null的情况,所以会导致NullPointerException的生成。我们需要这样修改:如果我们需要比较两个数组是否相等,其实我们想比较的是两个数组中的元素是否相等。我们知道数组是一个特殊的Object,那么数组对象也有一个equals方法,考虑下面的例子:返回的结果是false,因为数组直接使用了Object中定义的equals方法,我们看下该方法的定义:可以看到,该方法比较的是两个地址是否相等。所以我们的到了false结果。其实,我们可以使用Arrays.equals工具类中的方法来进行两个数组的比较:在java中,我们知道有一些基础类型像boolean, byte,char, short, int他们会有相对应的封装类型:Boolean,Byte,Character,Short,Integer等。我们可以直接将基础类型的值赋值给封装类型,封装类型会自行进行转换。考虑下面的例子:结果是多少呢?答案是true。为什么两个不同对象的比较会是true呢?在回答这个问题之前,我们看一下字符串的比较:这个我们大家应该都知道,因为String有一个字符串常量池,直接从字符串常量构建的String对象,其实是同一个对象。同样的对于Boolean和Byte来说,如果直接从基础类值构建的话,也是同一个对象。而对于Character来说,如果值的范围在u0000 to u007f,则属于同一个对象,如果超出了这个范围,则是不同的对象。对于Integer和Short来说,如果值的范围在-128 and 127,则属于同一个对象,如果超出了这个范围,则是不同的对象。再考虑下面的例子:输出的结果是false,因为boolC使用了new关键字,构建了一个新的对象。现在java集合可以通过指定类型,从而只存储特定类型的对象。考虑下面的一个例子:上面代码我们定义了一个Short的集合,然后将0-9添加进去,接着我们又调用了remove方法把i从集合删除。但是最后输出结果是10,表明我们并没有删除成功。为什么呢?看下HashSet的remove方法:remove方法的参数是Object,我们传入的i是int类型的,跟short不匹配,所以导致删除失败。我们需要这样修改:我们会使用Asset语句在代码中做调试使用,在使用的过程中需要注意Asset免费云主机域名语句不要对系统的业务逻辑产生副作用,也就是说即使Asset语句不运行,也不会修改代码的业务逻辑。看下面的例子:上的代码我们从list中删除第一个元素,并判断删除的元素是否大于0.上面的代码如果assert语句不执行的话,会导致业务逻辑也不执行,所以需要修改成下面这样:1.当判断的变量为数值型时(integer)先判断是否为空 在判是否为零2.当判断的变量为字符串时时(String)3.当判断的变量为对象时(people)4.当判断的变量为集合时(Lsit)到此,关于“java怎么判断integer是否为空”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注百云主机网站,小编会继续努力为大家带来更多实用的文章!
相关推荐: SpringBoot前端后端分离之Nginx服务器下载安装的方法
今天小编给大家分享一下SpringBoot前端后端分离之Nginx服务器下载安装的方法的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Nginx是…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。