java 三目运算符】的更多相关文章

最近在处理一个需求,需求描述如下:对数据库中查询出来的数据的某一个字段做一个简单处理.处理方式是:如果该字段的值(取值范围0~4,有可能为null)等于0,那么默认处理成1. 测试代码如下: public class TestNull { private Integer starLevel; public Integer getStarLevel() { return starLevel; } public void setStarLevel(Integer starLevel) { this.…
三目运算符 可以内嵌使用. level=(input>90)?"Class A":(input>60)?"Class B":"Class C";;…
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /** * 需求:计算网页访问量前三名 * 用户:喜欢视频 直播 * 帮助企业做经营和决策 * * 看数据 */ object UrlCount { def main(args: Array[String]): Unit = { //1.加载数据 val conf:SparkConf = new Spa…
一.java注释 1.单行注释  //注释内容 2.多行注释 /*注释内容*/ 3.文档注释(可用javadoc工具生成api文档,不过我还没试过)/**文档注释*/,文档注释可以在使用的时候看见注释. 文档注释常用的标记 @auther作者 @version版本 @deprecated 不推荐使用 @param 本放的参数 @return 返回值 @throws异常,同@exception 二.java的命名 1.项目名 字母全部小写 2.包名 全部小写 3.类名 首字母大写加驼峰 4.方法名…
一.思考题 以下代码可能有什么错误?为什么? import java.util.HashMap; import java.util.Map; public class Test { public static void main(String[] args) { Map<String, Integer> map = new HashMap<>(); map.put("heihaozi", 1); Integer i = map != null ? map.get…
一 .三目运算符与自增自减 GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/OperPrac02.java 条件运算符由两个符号组成"?"和":",要求有3个操作对象,所以也叫它三目运算符. 自增(++):将变量的值加1,分前缀式(如++i)和后缀式(如i++).前缀式是先加1再使用:后缀式是先使用再加1. 自减(--):将变量的值减1,分前缀式(如--i)和后缀式(如i--).前缀式是…
你真的了解Java中的三目运算符吗? 原创 2018-04-27 刨根问底的 Hollis Hollis Hollis 微信号 hollischuang 功能介绍 一个对Coding有着独特追求的人. 三目运算符是我们经常在代码中使用的,a= (b==null?0:1);这样一行代码可以代替一个if-else,可以使代码变得清爽易读. 但是,三目运算符也是有一定的语言规范的.在运用不恰当的时候会导致意想不到的问题.本文就介绍一个我自己曾经踩过的坑. 一.三目运算符 对于条件表达式b?x:y,先计…
    JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code package per.jizuiku.base; /** * @author 给最苦 * @date 2019/06/29 * @blog www.cnblogs.com/jizuiku */ class Demo { /** * @param args */ public static void…
最近,阿里巴巴Java开发手册发布了最新版--泰山版,这个名字起的不错,一览众山小. 新版新增了30+规约,其中有一条规约引起了作者的关注,那就是手册中提到在三目运算符使用过程中,需要注意自动拆箱导致的NullPointerException(后文简称:NPE)问题: 因为这个问题我很久之前(2015年)遇到过,曾经在博客中也记录过,刚好最新的开发手册再次提到了这个知识点,于是把之前的文章内容翻出来并重新整理了一下,带大家一起回顾下这个知识点. 可能有些人看过我之前那篇文章,本文并不是单纯的"旧…
转载请注明出处:http://www.cnblogs.com/liangyongrui/p/6348001.html 以前很少用java,就知道java和c++差不多. 今天就踩了一个坑. 不吐糟,直接进正文. 看这种写法,把较小的数加1. int a = 5, b = 6; b > a ? (a = 1) : b++; 众所周知,c++这样写是没问题的. 但是java就不行! $ javac Solution.java Solution.java:14: error: not a statem…
三目运算符 (表达式1)?(表达式2):(表达式3),计算方法是这样的:表达式1是一个逻辑表达式,如果其值为true,则整个表达式的值为表达式2的值,否则为表达式3的值.…
对于有些选择分支结构,可以使用简单的条件运算符来代替. 如: if(a<b)    min=a;else    min=b; 可以用下面的条件运算符来处理 min=(a<b)?a:b; 其中"(a<b)?a:b"是一个"条件表达式",它是这样执行的: 如果a<b为真,则表达式取a值,否则取b值. 条件运算符由两个符号组成"?"和":", 要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运…
/*    单目运算符:~3    双目运算符:3 + 4    三目运算符:        格式:比较表达式?表达式1:表达式2;                比较表达式:结果是一个boolean类型.                执行流程:            根据比较表达式的计算返回一个true或者false.            如果是true,就把表达式1作为结果.            如果是false,就把表达式2作为结果.*/ class OperatorDemo { p…
先看一个例子: package com.test; public class TernaryOperator { public static void main(String[] args) { int temp = 80; String s1 = String.valueOf(temp<100?90:100); String s2 = String.valueOf(temp<100?90:100.0); System.out.println(s1); System.out.println(s…
1.问题背景    以下代码运行的结果是:    A.hai    B.1987    C.1988    D.以上答案都不对 /** * 三目运算符 * A.hai * B.1987 * C.1988 * D.以上答案都不对 */ package com.you.model; /** * @author YOUHAIDONG * */ public class YesNo { /** * @param args */ public static void main(String[] args)…
一.if条件语句 语法: if(条件){ 执行语句1: }else{ 执行语句2: } 二.三目运算符 ?    条件运算符 语法: 表达式?结果1:结果2: 如果表达式结果为true,则结果为结果1: 如果表达式结果为false,则结果为结果2: 例1:判断一个数是奇数还是偶数. 例2:输入两个数,打印出最大值 例3:if语句和三木运算符的用法:…
python中没有其他语言中的三元表达式,不过有类似的实现方法 其他语言中,例如java的三元表达式是这样 int a = 1; String b = ""; b = a > 1? "执行表达式1":"执行表达式2" System.out.println(b) 在python中只有类似的替代办法,如果a>b的结果为真,h="变量1",如果为假,h="变量2" a = 1 b = 2 h = &q…
先看一个例子: package com.test; public class TernaryOperator { public static void main(String[] args) { int temp = 80; String s1 = String.valueOf(temp<100?90:100); String s2 = String.valueOf(temp<100?90:100.0); System.out.println(s1); System.out.println(s…
Java提供了一个特殊的三目(三个分支)运算符,它可以替代特定类型的if-then-else语句结构.这个运算符是“?”乍一看可能有一些困惑,但一旦理解“?”运算符,就可以高效地使用它.“?”运算符的一般形式如下: expression1 ? expression2 : expression3 其中expression1可以实任何结果为布尔值的表达式.如果expression1的结果为true,就对expression2进行求值:否则对expression3进行求值.“?”运算符的结果是对其进行…
    JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code package per.jizuiku.base; /** * @author 给最苦 * @date 2019/06/29 * @blog www.cnblogs.com/jizuiku */ class Demo { /** * @param args */ public static void…
1.从类型转换上看,因为三目运算符在做判断的时候需要考虑到类型转换的问题,而if else 不需要考虑类型转换. 所以 if else 效率高一点. 2.从总体上看 A:需要考虑到循环自身所占用的时间. B:需要考虑到赋值以及循环内的其他运算符所占用的时间. 所以 三目运算符效率高一点. 接下来一段代码来演示 2. public class TestIfElse { public static void main(String[] args) { double f = 0; final int…
是由数字.运算符.数字分组符号(括号)等以能求得数值的有意义排列的序列; a + b 3.14 + a (x + y) * z + 100 boolean b= i < 10 && (i%10 != 0) 表达式的类型和值: 对表达式中操作数进行运算得到的结果是表达式的值. 表达式值的数据类型即为表达式的类型. 表达式的运算顺序 应按照运算符的优先级从高到低的顺序进行; 优先级相同的运算符按照事先约定的结合方向进行; “三目运算符”,语法格式:        x ? y : z; 其…
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public static void main(String[] args) { int numA = 10; // 定义int型变量 int numB = 20; // 定义int型变量 // 如果numA大于numB,返回true,则将numA的内容赋值给max // 如果numA小于numB,返回fals…
2016-10-18 整理 写一个程序判断整数的奇偶 public static boolean isOdd(int i){ return i % 2 == 1; } 百度百科定义:奇数(英文:odd)数学术语 ,口语中也称作单数, 整数中,能被2整除的数是偶数,不能被2整除的数是奇数,奇数个位为1,3,5,7,9.偶数可用2k表示,奇数可用2k+1表示,这里k就是整数.奇数可以分为: 正奇数:1.3.5.7.9.11.13.15.17.19.21.23.25.27.29.31.33......…
我相信每一个学过java的人儿们都被java表达式虐过,各种"肯定是它,我不可能错!",然后各种"尼玛,真假,怎么可能?",虽然在实际开发中很少会真的让你去使用那些知识,但熟悉表达式的陷阱对于理解java数据类型在内存中的存储和运算以及JVM工作的原理有很大的帮助,最主要的,面试题太能考这些玩意了,有些坑当时爬出来了,过几天再做又会义无反顾的跳进去,于是我整理了自己做错过的一些题,也搜集了一些充满恶意的表达式方面的小题目,放在此处,警世: 问题 结果 脱坑必备 Sy…
http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没有考虑到会坚持往后边写,这次应该是更新该内容.而且很讨厌写基础的东西,内容比较琐碎,而且整理起来总会很多,有可能会打散成两个章节,但是我不保证,有可能一个章节就写完了,所以有时候希望基础的很多内容还是读者自己去看看,我基本保证把基础的内容全部都写出来,见谅.这一个章节写了过后我会把前边那个关于基础类…
java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和continue的区别 二.数据类型划分 java的数据类型可分为基本数据类型与引用数据类型.基本数据类型包括了最基本的boolean.char.byte.short.int.long.float.double;引用数据类型是以一种特殊的方式指向变量的实体,这种机制类似于C/C++. 三.基本数据类型 j…
/* java中的八种基本数据类型: 整数: byte . short . int . long 小数: float double 字符: char 布尔: boolean 字符串的类型: String(引用数据类型) 声明变量的方式: 方式1: 数据类型 变量名 = 数据; 方式2:数据类型 变量名1 , 变量名2 ......: */ class Demo1 { public static void main(String[] args) { String str = ""; //…
上篇讲了一些概念之类的知识点,现在继续总结知识点: 1.用户自己在控制面板输入内容是如何实现的:java中有一个类可实现这个功能 类Scanner: import java.util.Scanner; Scanner in=new Scanner(System.in); int x=in.nextInt(); 可以由这三句代码来表示用户输入一个整形数据. 2.逻辑运算符 逻辑运算符有什么用:用于连接两个boolean型的表达式. 比较运算符比较完必定会有结果且是Boolean型 &的运算特点:&a…
class Demo04{ public static void main(String[] args){ //逻辑运算符 //例1 System.out.println(true | false & false); //结果 true //Java语言中,&的优先级比|的优先级高 //例2 //三目运算符:关系表达式?值1:值2; int a = 10; int b = 5; int c = (a>b)?(a=4):(b=5); System.out.println(a); Sys…