满足多个条件的JAVA语句_关于Java:关于具有多个条件的If语句的快速问题
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
&& (AND) and || (OR) in Java IF statements
这是一个我可能早在几年前就已经知道答案的问题,但是如果我正在用Java编写具有if(x!= null && y == null && x.equals(z))之类的if语句,那么这是安全的? 我假设if语句的条件是从左到右解释的,因此从头检查x!= null可以确保在条件的x.equals(z)部分上不会引发(至少由x引发)空指针异常。 这个准确吗?
最好通过咨询JLS来检查此类情况。 它非常严格,精确,可以免费使用,与C ++不同。
@Sergey:但是在stackoverflow.com上询问并在2分钟内得到4个答案要容易得多。
是。 这称为短路逻辑:http://en.wikipedia.org/wiki/Short-circuit_evaluation。
就像@mellamokb说的是短路。
如果您有这样的比较,我只会添加:
if (str != null && str.equals("FINAL STRING") {...}
更好地使用:
if ("FINAL STRING".equals(str)) {...}
通常选择第一种方法,但条件应尽可能简单:)
简短:是的,这是正确的。 :)
简短的答案:您这样做很好。
答案很长:您这样做很好,因为Java使用了一种称为短路布尔评估的东西。 在这里阅读
满足多个条件的JAVA语句_关于Java:关于具有多个条件的If语句的快速问题相关推荐
- java基础语句_【Java基础-Java语言基础】
知识点:1.关键字 2.标识符 3.变量和常量 一.关键字 1.Java中的关键字有很多一共53个关键字有两个是保留字(java的关键字都是小写的!!) 2.Java中的保留字 (1)const 常量 ...
- java 删除语句_是java语句
<21天学通Java(第7版)>-- 第2章 Java编程基础 2.1 语句和表达式 本节书摘来异步社区<21天学通Java(第7版)>一书中的第2章,第2.1节,作者: [美 ...
- java任何表达式都可以当作语句_在Java语言中语句用分号终止,并不是所有的表达式都可以构成语句...
在Java语言中,语句以分号":"作为结束标志.块语句由其他语句组成,其本身不需要用分号结尾.另外,内嵌有块语句并以块语句结尾的语句,也不需要用分号结尾. Java语句可分为空语句 ...
- java switch case语句_在Java中使用switch Case语句的例子
当我们有多个选项,并且需要为每个选项执行不同的任务时,就需要使用Switch case语句. Switch case语句的语法如下-switch (variable or an integer exp ...
- java 示例_最佳Java示例
java 示例 什么是Java? (What is Java?) Java is a programming language developed by Sun Microsystems in 199 ...
- resultset java 类型_关于JAVA中Resultset的类型
JAVA中Resultset是一个类 而不是一个方法.记住啊. 结果集(ResultSet)是数据中查询结果返回的一种对象,可以说结果集是一个存储查询结果的对象,但是结果集并不仅仅具有存储的功能,他同 ...
- java异常_聊聊Java中的异常及处理
前言 在编程中异常报错是不可避免的.特别是在学习某个语言初期,看到异常报错就抓耳挠腮,常常开玩笑说编程1分钟,改bug1小时.今天就让我们来看看什么是异常和怎么合理的处理异常吧! 异常与error介绍 ...
- db2 如何导出insert语句_《MySQL 入门教程》第 23 篇 DML 语句之插入数据
文章来源:https://blog.csdn.net/horses/article/details/108287687 原文作者:不剪发的Tony老师 来源平台:CSDN 数据库的基本操作包括增.删. ...
- java 键入_在Java中键入Safe SQL
java 键入 字符串,字符串,字符串 无论您使用的是JPA , MyBatis还是Spring Data JDBC之类的框架,总会最终将SQL语句声明为Java String. 这种方法的问题在于, ...
最新文章
- SearchHit转成java对象_Java开发中最常犯的10个错误,你中招了吗?
- SuperMap iClient for Leaflet入门学习
- pycharm git 超详细教程
- mysql 可重复读 悲观锁_一文带你理解脏读,幻读,不可重复读与mysql的锁,事务隔离机制...
- (jQuery,Highcharts)前端图表系列之一 --Highcharts (转)
- Jm86中的encode_one_macroblock注释
- vuex Payload 荷载
- Linux搭建高并发高可用Redis集群
- blog error #include stream.h
- 悲苦手机命,“熬”在新零售
- Java 错误:找不到或无法加载主类(源文件中含有包名 package)
- 两款强大的PC优化工具推荐,CleanMyPc与Memreduct
- NIOS ii 实战篇 --- 按键控制LED
- ESP32|基于ESP32制作的低成本、可拓展性高的NES游戏机(1)(开源ESP32 NES模拟器)-效果演示及介绍
- 高等数学入门教程 — 自然底数e
- 泛微考勤加班流程,有重复的时间段不让提交
- 前端实现3D旋转木马相册
- 论文阅读笔记 - Chubby: The Chubby lock service for loosely-coupled distributed systems
- python输入一组数据找出被七除余一的数_C程序设计实验-1-7.doc
- 查看不到网络上的计算机和设备,Win10 无法看到局域网中的其他计算机及网络打印机...