day02-运算符和流程控制语句

Day 02

Java基础语法

1 .运算符

运算符:对字面量或者变量进行操作的符号
表达式:用运算符把字面量或者变量连接起来符合java语法的式子就可以称为表达式。不同运算符连接的表达式体现的是不同类型的表达式
例如:int a = 10; int b = 20; int c = a + b; +就叫做运算符 a + b就叫表达式

1.1.算数运算符

符号作用说明
+数学-
-数学+
*数学*
/取的是商
%取余取的是余数
练习:
    需求:定义一个三位数,将其拆分为个位、十位、百位后,输出在控制台
    举例:int number = 123;
    在控制台输出结果:
	    个位是:3
	    十位是:2
	    百位是:1
需求:定义一个三位数,将其拆分为个位、十位、百位后,输出在控制台
分析:
① 个位的计算:数值 % 10
	 123 除以 10(商12,余数为3)
② 十位的计算:数值 / 10 % 10
	123 除以 10 (商12,余数为3,整数相除只能得到整数)
	12 除以 10 (商1,余数为2)
③ 百位的计算:数值 / 10 / 10 % 10
	123 / 10 / 10 % 10(123 / 10 得到12,12  / 10 得到1,1 % 10 得到 1)
1.1.1+操作的三种情况

1.数值相加=>隐式数据类型转化

隐式转换把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量

强制转换把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量

格式:数据类型 变量名 = (目标数据类型)(数值或者变量)

2.字符串相加

拿字符在计算机底层对应的数值来进行计算的

当“+”操作中出现字符串时,这个“+”是字符串连接符,而不是算术运算

“zhongguo”+ 666

当连续进行“+”操作时,从左到右逐个执行

1 + 9999 + “岁zhongguo”

3.字符相加【得到新的ASCII码值】

拿字符在计算机底层对应的数值来进行计算的

‘A’ 65 A-Z是连续的

‘a’ 97 a-z是连续的

‘0’ 48 0-9是连续的

延伸:

符号作用说明
++加1操作加加在前先加加再计算,加加在后先计算再加加
减1操作减减在前先减减再计算,减减在后先计算再减减
关于++/--在前在后的说明,当++/--在前面的时候会先执行++或者--的操作然后再调用int的值;当++/--在后面的时候会先调用int的值然后再进行++或者--的操作

在这里插入图片描述

1.2.赋值运算符

符号作用说明
=赋值a=10,将10赋值给变量a
+=加后赋值a+=b,将a+b的结果赋值给a
-=减后赋值a-=b,将a-b的结果赋值给a
*=乘后赋值a*=b,将a*b的结果赋值给a
/=除后赋值a/=b,将a/b的结果赋值给a
%=取余后赋值a%=b,将a%b的结果赋值给a
赋值运算符隐含了强制类型转换
赋值运算符用于更加快速的书写代码【循环中】

1.3.关系运算符

符号作用说明
==等于a==b,判断a和b的值是否相等,成立为true,不成立为false
!=不等于a!=b,判断a和b的值是否不相等,成立为true,不成立为false
>大于a>b,判断a是否大于b,成立为true,不成立为false
>=大于等于a>=b,判断a是否大于等于b,成立为true,不成立为false
<小于a<b,判断a是否小于b,成立为true,不成立为false
<=小于等于a<=b,判断a是否小于等于b,成立为true,不成立为false
关系运算符的结果都是boolean类型,要么是true,要么是false
千万不要把“==”写成了“=”
一般用在判断里面

1.4.逻辑运算符

符号作用说明
&a&b ,同真则真,一假则假
&&逻辑与a&&b ,同真则真,一假则假【第一个值为假则不会往后再去判断】
|a|b ,一真则真,全假则假
||逻辑或a||b,一真则真,全假则假【第一个值如果是真则不会往后再去判断】
取反

1.3.三元运算符

符号作用说明
表达式?a:b三元运算符如果表达式成立则返回值a,如果不成立则返回值b

运算规则:

首先计算关系表达式的值

如果值为true,表达式1的值就是运算结果

如果值为false,表达式2的值就是运算结果

2.流程控制语句

a.顺序结构

顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行

在这里插入图片描述

b.选择结构

在这里插入图片描述

if语句

在这里插入图片描述

语法:
    if(判断条件){执行语句;}
    if(判断条件){执行语句;}else{执行语句;}
    if(判断条件){执行语句;}else if(判断条件){执行语句;}else{执行语句;}
    ...
练习:
    1.给定一个整数,请用程序实现判断该整数是奇数还是偶数,并在控制台输出该整数是奇数还是偶数
    2.张三想买一台7988元的新手机,他的旧手机在二手市场能卖1500元,而手机专卖店推出以旧换新优惠,把他旧手机交给店家,新手机就能     够打8折优惠。为了更省钱,要不要以旧换新?请通过程序告诉张三
    3.给出你的年龄,通过程序判断你是否属于青年人?【0-17未成年 18-65青年人 66-79中年 80-99老年人 100以上长寿老人】

switch语句

语法:
    switch 变量:
        case 值:
            语句;
            break;
        case 值:
            语句;
            break;
        ...
        default:
            语句;
            break;

c.循环结构

for循环

语法:
    for(循环变量初始化;循环条件判断;循环变量修改){
        执行语句;
    }
案例:
    1.在控制台输出1-5的数据
    2.思考实现在控制台输出5-1的数据
    3.求1-5之间的数据之和
    4.求1-100之间的偶数和
    5.在控制台输出100-999中所有的水仙花数
    6.打印直角三角形
    7.打印等腰直角三角形

while循环

语法:
    while(循环条件判断){
        循环语句;
        循环条件变化;
    }
练习:
    用while求1-100之间的偶数和,并把求和结果在控制台输出

do while循环

语法:
    do{
        循环语句;
        循环条件变化;
    }while(循环条件判断)
练习:
    用do..while求1-100之间的偶数和,并把求和结果在控制台输出

三种循环语句的区别

三种循环语句的区别
    for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)
    do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)

for和while的区别
    条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不可以继续使用了
    条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,还可以继续使用

死循环格式
    for(;;){}
    while(true) {}
    do{}while(true);

d.跳出控制语句

continue:结束本次循环  后面的循环还会继续
break:终止循环

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值