关于if 判断中null为什写前边和在使用equals方法进行判断是为什么要 “1“.equals(str)
提示: 每一个牛逼的人物,都会有一段苦逼的岁月,加油吧
@[TOC](关于if 判断中null为什写前边和在使用equals方法进行判断是为什么要 “1”.equals(str))
一、上代码
public class Test01 {public static void main(String[] args) {//①正常逻辑写法Admin admin1=new Admin();if(admin1==null){System.out.println("1");}else {System.out.println("2");}//②null先行写法Admin admin2=null;if(null!=admin2){System.out.println("1");}else {System.out.println("2");}if(admin2!=null){System.out.println("1");}else {System.out.println("2");}//思考:为什么要null先行?/*** 在java里面,它们是一样的。但是为什么把name==null写成是null==name,* 具体点来说,是在C语言里面引申出来的。 在C语言里面,为了防止少敲一个等号,* 编程人员仍然能在编译的时候找到错误。因为if(name=null)是在编译的时候,* 不会出现错误,而if(null=name)是会编译出错。 故而,null==name,* 是在C语言的编程习惯引入进来的。当然了,在java里面,if(name=null)是* 会出现编译错误的,现在就不用担心这个了。但是,良好的编程习惯,* 还是写成null==name的好。*///关于当if中出现多条件判断时的判断情况//情况1String str=null;if(str.length() == 0 || str == null){System.out.println("多条件if错误写法");}//情况2if(str == null || str.length() == 0){System.out.println("多条件if1正确写法");}//关于null的equal判断// 情况1if(str.equals("1")){System.out.println("null-equals1--报错");}// 情况2if("1".equals("str")){System.out.println("null-equals2--不报错");}}
}
关于if 判断中null为什写前边和在使用equals方法进行判断是为什么要 “1“.equals(str)相关推荐
- Eclipse中快速为类提供构造器、get()、set()方法、重写toString()、hasCode()、equals()等
当我们写一个类的时候,经常会写构造器,get().set()方法等,以及打印类的信息需要重写toString方法等.这些eclipse已经为我们提供好了,只需直接点击输出即可.方法如下: Eclips ...
- python字符串equals方法_判断字符串相等-Equals(上)
本次课程是零基础课程,只要熟悉计算机的基本应用和操作,一般可以完成本次课程学习.本课程深入浅出的介绍了C#语言的基本语法结构.条件选择.循环.异常处理.数组.集合.值类型和应用类型.字符串的常用方法. ...
- 【收藏】C#面试题整理笔试篇(最全1000+道带答案)300道填空 + 300道选择 + 300道判断 + 70道读程序写结果和看程序填空 + 100道简答题
<程序员>曾陪伴了无数开发者成长.<新程序员>全新归来,推荐给大家! <新程序员> 一.填空: 1.操作符( && )被用来说明两个条件同为真的情况 ...
- java if equals_Java中判断对象是否相等的equals()方法使用教程
Object类中的equals方法用于检测一个对象是否等于另一个对象.在Object类中,这个方法判断两个对象是否具有相同的引用,如果两个对象具有相同的引用,它们一定是相等的.从这点上看,将其作为默认 ...
- Object类中hashCode()和equals()方法详解(附图)
下图是规范中要求的: 图解:比如equals相等的箭头指向hashcode相等,标示equals相等那么必有hashcode相等.另外有两个箭头指向别人的标示可能是其中之一. //JAVA代码: pu ...
- Java中equals方法造成空指针异常的原因及解决方案
前言 博主最近在做一个项目的调试工作,期间遇到了一个会导致抛出空指针异常的小问题,说它是小问题,是因为真的只是在写代码的时候注意一下就好了,但是这里还要写一个博客,就是为了剖析这个问题,然后给自己做个 ...
- java中equals的重写_Java重写equals方法(重点讲解)
为什么equals()方法要重写? 判断两个对象在逻辑上是否相等,如根据类的成员变量来判断两个类的实例是否相等,而继承Object中的equals方法只能判断两个引用变量是否是同一个对象.这样我们往往 ...
- 在聊Java中的equals方法
2019独角兽企业重金招聘Python工程师标准>>> java规范中equals方法特征 自反性(对于任何非空引用x, x.equals(x) 返回true;) 对称性(对于任何引 ...
- java中的equals拿什么鞋的_Java中==和equals方法
Java程序中测试两个变量是否相等有两种方式:1.== :2.equals()方法 当使用==来判断两个变量是否相等时,如果两个变量是基本类型变量,且都是基本数值类型(不一定要求数据类型严格相同),则 ...
最新文章
- Android Studio你不知道的调试技巧
- 你与弄懂promise之间可能只差这篇文章(二)
- [机器学习]AutoML --- AutoKeras
- VS和IIS的一些问题
- DPDK服务核心(coremask)
- OpenShift 4 之 GitOps(6)用ArgoCD部署MongoDB主从集群
- JUnit5 预期的异常 – assertThrows()示例
- 请教各位前辈一个问题。
- 操作系统学习笔记:文件系统接口
- 将VMware迁移到阿里云分几步?!
- 6.SpringMVC 配置式开发-处理器
- python录音pyaudio_使用PyAudio 进行录音、播放
- Android GPU呈现模式分析功能,手机流畅度。仅供参考
- 【VMware】主机与虚拟机之间的数据传输(复制、粘贴、拖拽)
- 汐月教育之理解TensorFlow(四)词向量
- obsidian和zotero联动
- 一文带你搞懂工厂设计模式
- 三星HDM Odyssey适配SteamVR
- CodeGear RAD 2007 up4最新下载及破解
- 解决安装Ubuntu时鼠标无法移动,卡Logo的问题