运算符

Java基础运算与流程控制


 1、运算符

 

1_1、算数运算符

1)、偶数 2 取余得到 0  奇数对2 取余得到 1

1 3 5 7 9 对2 取余 1

 2 4 6 8 对2 取余  0

2)、如果想要得到小数 必须要有小数参与运算

注意:

整数之间参与运算只能得到整数

如果想要得到小数 必须要有小数参与运算

3)、间参与运算只能得到整数

A、%--个数之间的余数

B、/--两个数之间的商

4)、算术运算符---+ - * / %(取余,模运算 取模)

5)、用来操作 常量或者 变量的符号

 

1_2、自增自减运算符

++自增

例:int a = 1;

a ++;相当于 a = a + 1;

最终将结果是2;

--自减

例:int a = 1;

a --;相当于 a = a - 1;

最终将结果是0;

++ -- 在前与在后的区别

(1)、单独使用 没有区别

(2)、与其他运算符参与运算

a、在前--拿到的是 ++ --之后的值参与运算(先运算,再操作)

b、在后--拿到的是 ++ --之前的值参与运算(先操作,在运算)

1_3、赋值运算符

(1)、=

(2)、扩展赋值运算符

a、+= -= *= /= %=

b、隐藏功能--具有强转的功能

1_4、关系运算符

(1)、== != < <= > >=

(2)、结果是一个boolean类型

 

1_5、逻辑运算符

(1)、用来连接 关系表达式的

(2)、结果是boolean类型

(3)、关系表达式:用关系运算符连接的式子

(4)、&& || !(与或非)

(5)、&&---false则false

(6)、||---true则true

(7)、!---false则true true则false

a、与原先 不一样  相反

b、两个!双重否定

(8)、& | ^(异或)--但是 这么多老师 开发多年 从来没用过

 

1_6、三元运算符

//三元运算符-->关系表达式? 表达式1:表达式2;

/*

 * 如果关系表达式结果是true返回 表达式1

 * 如果关系表达式结果是false返回 表达式2

 */

//int a = 10;

//int b = 20;

//int c = a > b? a:b;

//System.out.println(c);

//唐三 番茄 辰东    唐三 --> 番茄   番茄 --> 辰东      辰东

int a = 10;

int b = 50;  

int c = 30;

int max = 0;

//ac比较获取较大值

max = a > b ? a : b;

//maxc比较 max是较大值  结果就是最大值

max = max > c? max:c;

System.out.println(max);

 

 


2、Scanner键盘输入

//1,倒包packagepublic class

import java.util.Scanner;

 

 

//注意 以后没学习一个新的类  都不能直接拿过来做类名

public class ScannerDemo {

public static void main(String[] args) {

//2 创建对象 sc 就是一个变量

Scanner sc = new Scanner(System.in);

//3 调用方法

System.out.println("请您输入一个数字:");

int a = sc.nextInt();

System.out.println("您输入的数字是:" + a);

}

}

 

 

3、流程控制语句

 

 

3_1、顺序流程控制语句---顺序流程控制语句

 

 

3_2、流程控制语句

(1) 、if语句1

/*

 * if(关系表达式){

 * 语句体

 * }

 * 其他语句体

 *

 * 首先拿到关系表达式的结果

 * 如果是 true 则执行 大括号内的代码

 * 如果是false 则不执行 接着去执行其他语句体

 */

int a = 10;

int b = 20;

if(a < b){

System.out.println("ab");

}

System.out.println("我是其他语句体");

 

(2) 、if语句2

package com.itheima._04;

import java.util.Scanner;

public class IfDemo2 {

public static void main(String[] args) {

/*

 * if(关系表达式){

 * 语句体1;

 * }else{

 * 语句体2;

 * }

 *

 * 1,先拿到关系表达式的值

 * 2,如果是 true 则执行 语句体1;

 * 3,如果是 false则执行 语句体2;

 */

//键盘输入两个整数  获取最大值并输出

//键盘输入三个整数  获取最大值并输出

//键盘输入三个整数 a b c 然后 输出 a b c 三个变量  a为最大值 b为中间值 c 为最小值

//例如:键盘录入 a = 10 b = 30 c = 5  最终 System.out.println(a + "---" + b + "---" + c);的结果为 30---10---5

Scanner sc = new Scanner(System.in);

System.out.println("请输入第一个整数");

int a = sc.nextInt();

System.out.println("请输入第二个整数");

int b = sc.nextInt();

System.out.println("请输入第三个整数");

int c = sc.nextInt();

//if 交换的思想

int temp = 0;

if (a < b) {

temp = a;

a = b;

b = temp;

}

if(b < c){

temp = c;

c = b;

b = temp;

}

if(a < b){

temp =  b;

 b = a;

 a = temp;

}

System.out.println(a + "---" + b + "---" + c);

}

}

 

(3) 、if语句3

package com.itheima;

/*

 * 格式3

 * if(关系表达式1) {

 * 语句体1;

 * }else if(关系表达式2) {

 * 语句体2;

 * }

 * ...

 * else {

 * 语句体n+1;

 * }

 *

 * 执行流程:

 * A:计算关系表达式1的值,看是true还是false

 * B:如果是true,就执行语句体1

 * C:如果是false,就继续计算关系表达式2的值,看是true还是false

 * D:如果是true,就执行语句体2

 * E:如果是false,就继续计算...

 * F:所有的关系表达式的结果都是false,执行语句体n+1

 */

public class IfDemo3 {

public static void main(String[] args) {

System.out.println("开始");

//假如xy满足如下的关系:

//x>=3y=2x+1

//-1<=x<3y=2x

//x<-1y=2x-1

//根据给定的x的值,计算出y的值

int x = 5;

x = 0;

x = -5;

//定义变量y

int y;

if(x >= 3) {

y = 2*x+1;

}else if(x>=-1 && x<3) {

y = 2*x;

}else if(x<-1) {

y = 2*x-1;

}else {

y = 0;

System.out.println("不存在这样的x的值");

}

System.out.println("y:"+y);

System.out.println("结束");

}

}

(4) switch语句

package com.itheima._05;

 

public class SwitchDemo {

public static void main(String[] args) {

/*

 * switch(表达式){

 * case 1:

 * 语句体1;

 *break;

 *case 2:

 * 语句体2;

 *break;

 *case 3:

 * 语句体3;

 *break;

 *  ...

 *default:

 * 语句体 n+1;

break;

 * }

 * 首先  获取表达式的 值

 * 如果 值  与 值1 相同  执行 语句体1; 在执行 break; 然后 switch语句结束

 * 如果 不同 则 接着往下判断  直到结果匹配上  遇到breakswitch语句结束

 * 如果 都没能匹配成功 走 default 内的  语句体 n+1;

 * 如果  没有 default 执行到最后一个 大括号  switch语句结束

 * 表达式  byte char short int

 * jdk 1.5以后 枚举

 * jdk 1.7以后 字符串

 */

int a = 2;

switch(a + 2){

case 1:

System.out.println("a1");

break;

case 2:

System.out.println("a2");

break;

case 3:

System.out.println("a3");

break;

}

System.out.println("其他语句");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值