Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators

                                  作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.赋值运算符

  表达式的数据类型要与左边变量的类型兼容

1>.常规赋值

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class Assignment{
public static void main(String[] args){
//1>.赋值
int x = 123; x = 123 + 5; int y = x / 2; // int z = 3.1415926; //类型不兼容。 System.out.println(x); //
System.out.println(y); //
}
}

2>.符合赋值,自反赋值

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class Assignment2{
public static void main(String[] args){
//复合赋值隐含着强类型转换 byte a = 10; a += 5; //相当于 a = (byte)(a + 5) System.out.println(a); //
}
}

二.条件运算符

  条件运算符也叫三元运算符。语法格式:“(条件)?表达式1:表达式2”,如果条件成立,整个表达式的值就是表达式1的值,如果条件不成立,整个表达式的值就是表达式2的值。

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ public class Demo{
public static void main(String[] args){ int a = 10;
int b = 20;
int result = a > b ? a:b; /**
如果a > b 成立,就把a的值赋值给变量result;
如果a > b不成立,就把b的值赋值给变量result;
就是把a和b中较大的保存到变量result中。
*/ System.out.println( result ); String str = a > b ? "a较大":"b较大";
System.out.println( str ); int x = 100;
int y = 20;
int z = 50; // int max = (x>y?x:y)>z?(x>y?x:y):z; //不建议这样玩,可以用来跟小白装逼用,哈哈~但是可读性太差。 int maxAB = x > y ? x:y; int max = maxAB > z ? maxAB:z; System.out.println(max); }
}

  如果让你比较三个数字的大小,并从键盘输入的咋办呢?这个时候我们就得导入一个类啦,来帮助我们解决这个问题。

 /*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class compare {
public static void main(String[] args){
/**
从键盘输入两个数,显示其中的最大值,要求使用if-else结构.
*/
Scanner Input = new Scanner(System.in); System.out.print("请输入第一个数字:>>>");
int num1 = Input.nextInt(); System.out.print("请输入第二个数字:>>>");
int num2 = Input.nextInt(); System.out.print("请输入第三个数字:>>>");
int num3 = Input.nextInt(); //方案一:
// if(num1 > num2){
// if (num1 > num3){
// System.out.println(num1);
// }else{
// System.out.println(num3);
// } // }else{
// if (num2 > num3){
// System.out.println(num2);
// }else{
// System.out.println(num3);
// }
// } //方案二:(推荐使用)
int res = (num1 > num2)?num1:num2;
int max = (res > num3)?res:num3;
System.out.println(max); //方案三:(不推荐使用,no 作 no die) // System.out.print("请输入第一个数字:>>>");
// int a = Input.nextInt(); // System.out.print("请输入第二个数字:>>>");
// int b = Input.nextInt(); // System.out.print("请输入第三个数字:>>>");
// int c = Input.nextInt();
// System.out.println("最大值是:" + ((a > b)?(a>c?a:c):(b>c?b:c))); }
}

Java基础-赋值运算符Assignment Operators与条件运算符Condition Operators的更多相关文章

  1. Java基础-算术运算符(Arithmetic Operators)

    Java基础-算术运算符(Arithmetic Operators) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java程序通过运算符实现对数据的处理,Java中的运算符包括: ...

  2. Java基础-逻辑运算符Logic Operators

    Java基础-逻辑运算符Logic Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.逻辑运算符 逻辑运算符是对布尔值进行操作运算的,常见的有: 1>.逻 ...

  3. Java基础-比较运算符Compare Operators

    Java基础-比较运算符Compare Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关系运算符 关系运算符包括: 1>.大于(>) 2> ...

  4. Java基础-位运算符Bitwise Operators

    Java基础-位运算符Bitwise Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.位运算特点 位运算符分为按位与(&),按位或(|),按位异或(^ ...

  5. 030 01 Android 零基础入门 01 Java基础语法 03 Java运算符 10 条件运算符

    030 01 Android 零基础入门 01 Java基础语法 03 Java运算符 10 条件运算符 本文知识点:Java中的条件运算符 条件运算符是Java当中唯一一个三目运算符 什么是三目运算 ...

  6. 021 01 Android 零基础入门 01 Java基础语法 03 Java运算符 01 赋值运算符

    021 01 Android 零基础入门 01 Java基础语法 03 Java运算符 01 赋值运算符 本文知识点:Java中的赋值运算符 赋值运算符 赋值运算符从右往左运算 赋值运算符左边不能是常 ...

  7. Java基础概念1

    一.Java数据类型 1.byte 字节型 1byte = 8bit 表示数范围:-2^7~2^7-1(-128~127): 2.short 短整型 2 byte = 16bit 表示数范围:-2^1 ...

  8. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  9. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

随机推荐

  1. effective c++ 笔记 (49-52)

    //---------------------------15/04/27---------------------------- //#49   了解new-handler的行为 { /* 1:在o ...

  2. vs2013 std::sort 分析

    由于之前在debug模式下发现stl的sort简直慢到不能忍,所以自己写了一个sgi的sort,后来发现在release模式下,vs自带的sort快的不行,就研究了下. 这里有些和sgi-stl相通的 ...

  3. 华为测试大牛Python+Django接口自动化怎么写的?

    有人喜欢创造世界,他们做了开发者:有的人喜欢开发者,他们做了测试员.什么是软件测试?软件测试就是一场本该在用户面前发生的灾难提前在自己面前发生了,这会让他们生出一种救世主的感觉,拯救了用户,也就拯救者 ...

  4. 《Pro SQL Server Internals, 2nd edition》的CHAPTER 2 Tables and Indexes中的Clustered Indexes一节(翻译)

    <Pro SQL Server Internals> 作者: Dmitri Korotkevitch 出版社: Apress出版年: 2016-12-29页数: 804定价: USD 59 ...

  5. k8s网络之calico学习

    一.知识准备 1.calico主要通过ipip协议与bgp协议来实现通信.前者通过ipip隧道作为通信基础,后者则是纯三层的路由交换 2.bgp协议主要由两种方式:BGP Speaker 全互联模式( ...

  6. UI Recorder 安装教程(二)

    前言: UI Recorder支持无线native app(Android, iOS)录制, 基于macaca实现:https://macacajs.com/ 本次教程只针对无线native app( ...

  7. 右键添加使用Sublime打开

    网上教程大多是教你怎么改注册表,有点麻烦. 我根据教程改完之后导出来供大家使用,更方便快捷. Windows Registry Editor Version 5.00 [HKEY_CLASSES_RO ...

  8. Linux第一周学习总结——计算机是如何工作的

    第一周学习总结--计算机是如何工作的 作者:刘浩晨 一.存储程序计算机工作模型 冯诺依曼体系结构:核心思想为存储程序计算机.两个层面: (1)硬件的角度(计算机主板):一个CPU,一块内存,之间有总线 ...

  9. 第一次Sprint冲刺结果评价

    组名 软件项目名称 评价 hzsy 图文转换        这款软件最初的目标是扫描书本上文字转换成电子版,而且也可以将语音转换成文字,但在展示时,没有实现完整的功能,只有简单的界面,看不到更深的实质 ...

  10. LeetCode 638 Shopping Offers

    题目链接: LeetCode 638 Shopping Offers 题解 dynamic programing 需要用到进制转换来表示状态,或者可以直接用一个vector来保存状态. 代码 1.未优 ...