小白学java第3天
2020-07-02 20:32
92 查看
1. 运算符
-
概念
对变量和常量进行操作的符号
分类
-
算数运算符:+ - * / ++ –
算数运算符
public class Demo01_Operator { public static void main(String[] args) { int num1 = 4; int num2 = 5; System.out.println(num1 + num2); System.out.println(num1 - num2); System.out.println(num1 * num2); System.out.println(num1 / num2); System.out.println(num1 % num2); } }
2. 算数运算符之++和–
-
代码实现
public class Demo02_Operator { public static void main(String[] args) { int num1 = 4; int num3 = num1++; System.out.println(num1);//5 System.out.println(num3);//7 int num2 = 5; int num4 = ++num2; System.out.println(num2);//6 System.out.println(num4);//6 int num5 = 4; int num6 = num5--; System.out.println(num5);//3 System.out.println(num6);//4 int num7 = 5; int num8 = --num7; System.out.println(num7);//4 System.out.println(num8);//4 } }
-
总结
不管++放在变量的前面还是后面,变量都会+1 - ++如果放在变量的后面,则整体等于变量的原值
- ++如果放在变量的前面,则整体等于变量的原值+1
- –同理
3. 算数运算符++和–的练习
-
代码
public class Demo03_Operator { public static void main(String[] args) { int a = 10; int b = 10; int c = 10; a = b--; b = c++; c = ++a; b = --c; a = c++; c = ++a; System.out.println(a);//11 System.out.println(b);//10 System.out.println(c);//11 } }
byte a = 1; a++; a = a + 1;//错误 a+1为int型,不能用一个byte型去存一个int型 要强转
4. 赋值运算符
-
分类
基本赋值运算 = - 高级赋值运算 += -= /= *=
代码
public class Demo04_Operator { public static void main(String[] args) { int num1 = 1; int num2 = 1; num1 += num2; System.out.println(num1); byte num3 = 1; num3 += 1; //跟num3++一样 底层有强转 System.out.println(num3); } }
5. 关系运算符
-
分类
== != > >= < <=
代码
public class Demo05_Operator { public static void main(String[] args) { int num1 = 1; int num2 = 1; double num3 = 1.0; short num4 = 5; float num5 = 5.0f; System.out.println(num1 > num2); //f System.out.println(num1 == num2);//t System.out.println(num1 < num2); //f System.out.println(num1 == num3);//t System.out.println(num4 == num5);//t } }
6. 位运算符
-
分类
^ >> <<
概述
^ 异或 相同取0,不同取1
<< 左移 向左移 右边补零
右移 向右移 左边补零
public class Demo06_Operator { public static void main(String[] args) { int a = 5; int b = 3; System.out.println(a >> b);//0 System.out.println(a << b);//40 System.out.println(a ^ b); //6 } }
7. 逻辑运算符
-
分类
& 一个为假,全为假
-
一个为真,全为真
-
非真即假 非假及真
public class Demo07_Operator { public static void main(String[] args) { boolean a = true; boolean b = false; System.out.println(a & b); System.out.println(a | b); System.out.println(!b); System.out.println(!a); } }
8. 运算符&和&& |和||的区别
-
& 位与 && 短路与,他们执行的结果是一样的
-
& 不管&左边是真还是假,右边一定执行
-
&& 如果左边为假,则右边不执行
public class Demo08_Operator { public static void main(String[] args) { int num1 = 1; int num2 = 1; boolean flag1 = num1 == 0 & num2++ == 1; System.out.println(flag1);//f System.out.println(num1);//1 System.out.println(num2);//2 num1 = 1; num2 = 1; boolean flag2 = num1 == 0 && num2++ == 1; System.out.println(flag2);//f System.out.println(num1);//1 System.out.println(num2);//1 } }
-
& 或与 && 短路或,他们执行的结果是一样的
-
& 不管&左边是真还是假,右边一定执行
-
&& 如果左边为真,则右边不执行
public class Demo08_Operator { public static void main(String[] args) { int num1 = 1; int num2 = 1; boolean flag3 = num1 == 1 | num2++ == 1; System.out.println(flag3);//t System.out.println(num1);//1 System.out.println(num2);//2 num1 = 1; num2 = 1; boolean flag4 = num1 == 1 || num2++ == 1; System.out.println(flag4);//t System.out.println(num1);//1 System.out.println(num2);//1 } }
9.三元运算符
-
语法
条件表达式 ? 表达式1 : 表达式2;
如果条件表达式为真,则输出表达式1的值
-
如果条件表达式为假,则输出表达式2的值
-
运算结果是一个值,可以用变量接收
/** 求最大值 */ public class Demo09_Operator { public static void main(String[] args) { int num1 = 5; int num2 = 1; int max = num1 > num2 ? num1 : num2; System.out.println("max:" + max); } }
10. 练习 两只跳跳虎
-
需求
公园里有两只跳跳虎,一只200斤,一只180斤,问他们体重是否相等public class Demo10_Operator { public static void main(String[] args) { int tiger1 = 200; int tiger2 = 180; boolean isEquals = tiger1 == tiger2; System.out.println("是否相等:" + isEquals); String msg = tiger1 == tiger2 ? "相等" : "不相等"; System.out.println(msg); } }
11. 练习 三个和尚
-
需求
有三个和尚,分别高为150 165 210, 输出最高的那一个
public class Demo10_Operator { public static void main(String[] args) { int monk1 = 150; int monk2 = 165; int monk3 = 210; int max = monk1 > monk2 ? monk1 : monk2; max = max > monk3 ? max : monk3; System.out.println("最高的和尚的身高是" + max);//210 int max1 = (monk1 > monk2 ? monk1 : monk2) > monk3 ? (monk1 > monk2 ? monk1 : monk2) : monk3; System.out.println("最高的和尚的身高是" + max1);//210 } }
12. Java表达式
- 概述 由变量,常量,运算符组的式子
13. 键盘输入
-
概述
在程序的运行过程中添加键盘录入,提高交互性,增强用户体验
步骤
导包
创建对象
提示输入
开始输入
打印输出
import java.util.Scanner; public class Demo13_Expression { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入a的值"); int a = input.nextInt(); System.out.println("a:" + a); //input.close(); } }
14. 两只跳跳虎(加强版)
//键盘输入两个跳跳虎的体重,比较是否相等 import java.util.Scanner; public class Demo15_Expression { public static void main(String[] args) { Scanner input =new Scanner(System.in); System.out.println("请输入两只跳跳虎的体重"); int tiger1 = input.nextInt(); int tiger2 = input.nextInt(); String msg = tiger1 == tiger2 ? "两只跳跳虎的体重相等" : "两只跳跳虎的体重不相等"; System.out.println(msg); } }
15.三个和尚(加强版)
//键盘输入3个和尚的身高, 打印最矮的那个和尚的身高 import java.util.Scanner; public class Demo16_Expression { public static void main(String[] args) { Scanner input =new Scanner(System.in); System.out.println("请输入第一个和尚的身高"); int monk1 = input.nextInt(); System.out.println("请输入第二个和尚的身高"); int monk2 = input.nextInt(); System.out.println("请输入第三个和尚的身高"); int monk3 = input.nextInt(); int min = monk1 <monk2 ? monk1 : monk2 <monk3 ? monk1 <monk2 ? monk1 : monk2 : monk3; System.out.println("最矮的和尚的身高为"); System.out.println(min); } }
16. 流程控制语句
- 概述 可以控制程序的执行流程
-
顺序结构
17. 选择结构之if单分支
-
选择结构语句
if - switch
if语句
-
单分支
if单分支
public class Demo17_If { public static void main(String[] args) { boolean flag = true; if (flag) { System.out.println("if语句体"); } System.out.println("我执行了"); } }
18. 单分支if练习
-
需求s
输入年龄,如果年龄大于30岁 打印老邱 否则 打印邱
import java.util.Scanner public class Demo18_If { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入年龄"); int age = input.nextInt(); String name = "邱"; if(age > 30) { name = "老" + name; } System.out.println("你好" + name); } }
19. 双分支if语句
-
语法
if(flag){ 表达式1; }else{ 表达式2; }
-
实现
public class Demo19_If { public static void main(String[] args) { boolean flag = true; if (flag) { System.out.println("我爱java"); }else { System.out.println("java使我快乐"); } System.out.println("java天下第一"); } }
20. if双分支练习
//比较大小 public class Demo20_If { public static void main(String[] args) { int a = 15; int b = 20; int max = 0; if (a > b) { max = a; }else { max = b; } System.out.println(max); } }
//输入年龄,如果大于30,输出老邱,否则,输出小邱 public class Demo21_If { public static void main(String[] args) { String name = "邱"; Scanner input = new Scanner(System.in); int age = input.nextInt(); if (age > 30) { System.out.println("老" + name);; }else { System.out.println("小" + name);; } } }
//输入一个数 判断是偶数还是奇数 public class Demo22_If { public static void main(String[] args) { Scanner input = new Scanner(System.in); int num = input.nextInt(); if (num % 2 == 0) { System.out.println("该数是偶数" );; }else { System.out.println("该数是奇数");; } } }
思维导图
相关文章推荐
- Java小白学习日志第3天
- 给小白的Java EE生存指南(6) :Java 反射
- Java小白修炼手册
- 大型Java项目架构演进(小白)
- (部分转载)java小白天天打卡
- 学习笔记(02):Java小白修炼手册-不会不行!开发中99.9%会用到的数组
- 利用java+API开发云存储(小白教程,新手必备)
- 小白笔记----JAVA小程序数三减一(来自马士兵视屏)
- 学习笔记(02):Java小白修炼手册-工欲善其事必先利其器,掌握Java开发工具
- Jdk1.8 安装。下载地址。java小白入门--windows10系统
- java 枚举 (小白版)
- Java新手小白 对动态代理的一些理解
- 【小白的java成长系列】——顶级类Object源代码分析
- 【小白的java成长系列】——linux下的java环境变量设置
- Java学习笔记02(小白级别)
- 【同行说技术】Java程序员小白变大神必读资料汇总(三)
- 小白Java笔记6,进程与线程
- 第一次用csdn来写关于Java的代码,之前一直都闲置在那,我是一个代码小白,有什么不对的地方,希望各位大佬不吝赐教。今天我写的题目是:翻转字符串
- Java JUC并发包解析 [源码][计算机原理][小白慎入]
- java小白学编程之基础2