java 基础 03 运算符 分支结构 循环结构
今天内容:
(1)运算符
(2)分支结构
(3)循环结构
1运算符
1.1赋值运算符
(1)简单赋值
= 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值。
笔试题:
ia == 5; - 用于判断变量ia的数值是否等于5
5 == ia; - 用于判断5是否等于ia的数值,推荐使用该方式
ia = 5; - 用于使用数据5给变量ia赋值,覆盖ia原来的数值
5 = ia; - 编译报错
(2)复合赋值
+= -= *= /= ...
笔试题:
byte b1 = 3;
与b1 += 2真正等价的是b1 = (byte)(b1 + 2);
1.2 移位运算符
<< 表示左移运算符,用于将变量的二进制位向左移动,右边用0填充。
>> 表示右移运算符,用于将变量的二进制位向右移动,左边用符号位填充。
>>> 表示无符号右移运算符,用于将变量的二进制位向右移动,左边用0填充。
1.3 位运算符
& 表示按位与运算符,用于按照二进制位进行与运算,同1为1,一0为0(1-真 0-假)
| 表示按位或运算符,用于按照二进制位进行或运算,一1为1,同0为0.
~ 表示按位取反运算符,1为0,0为1.
^ 表示按位异或运算符,用于按照二进制位进行异或运算,相同为0,不同为1.
1.4 运算符的优先级
a.()的优先级极高
b. =的优先级极低
c. * / %的优先级高于+ -,同级的运算符哪个在前先算哪个
2.分支结构
2.1 基本概念
当需要在程序进行条件判断来决定是否执行后面代码的场合中,可以使用分支结构。
2.2 if分支结构
(1)语法格式
if(条件表达式){
语句块;
}
(2)执行流程
判断条件表达式是否成立
=> 若成立,则执行语句块;
=> 若不成立,则跳过语句块;
2.3 if-else分支结构
(1)语法格式
if(条件表达式){
语句块1;
}
else{
语句块2;
}
(2)执行流程
判断条件表达式是否成立
=> 若成立,则执行语句块1;
=> 若不成立,则执行语句块2;
2.4 if-else if-else分支结构
(1)语法格式
if(条件表达式1){
语句块1;
}
else if(条件表达式2){
语句块2;
}
...
else{
语句块n;
}
(2)执行流程
判断条件表达式1是否成立
=> 若成立,则执行语句块1
=> 若不成立,则判断条件表达式2是否成立
=> 若成立,则执行语句块2
=> 若不成立,则执行语句块n
2.5 switch-case分支结构
(1)语法格式
switch(变量/表达式){
case 字面值1: 语句块1; break;
case 字面值2: 语句块2; break;
...
default:语句块n;
}
(2)执行流程
计算变量/表达式的结果 => 判断是否匹配字面值1
=> 若匹配,则执行语句块1 => 执行break跳出当前结构
=> 若不匹配,则判断是否匹配字面值2
=> 若匹配,则执行语句块2 => 执行break跳出当前结构
=> 若不匹配,则执行语句块n
(3)注意事项
switch()中支持的类型有:byte、short、char以及int类型,从jdk1.5开始支持枚举类型,从jdk1.7开始支持String类型。
3.循环结构
3.1 基本概念
在某些特殊场合中需要重复着执行一段代码时,则借助循环结构。
3.2 for循环
(1)语法格式
for(初始化表达式; 条件表达式; 修改初始值表达式){
循环体;
}
(2)执行流程
执行初始化表达式 => 判断条件表达式是否成立
=> 若成立,则执行循环体 => 执行修改初始值表达式 => 判断条件表达式是否成立
=> 若不成立,则循环结束
3.3 break和continue
break关键字可以使用在switch-case分支结构和循环结构中,用于跳出当前结构。
continue关键字只能使用在循环结构中,用于结束本次循环继续下一次循环(会用即可)。
3.4 特殊的循环
for(;;) - 像这种没有任何循环条件的循环叫做无限循环,俗称"死循环"。
该循环通常与break关键字搭配使用。
java 基础 03 运算符 分支结构 循环结构的更多相关文章
- 刘强1109 JavaScript基础二(分支与循环结构)
[if-else结构] 1.结构的写法: if(判断条件){ 条件为true时,执行if{} } else{ 条件为false时,执行else{} } 2.注意事项: ① else{}语句块,可以根据 ...
- java基础知识—运算符和基本选择结构
1.保存真假,使用boolean变量 boolean有两个值:true 真 false 假 2.从控制台接受输入信息,通过创建扫描器 Sacnner input=new Sacnner(System. ...
- java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...
- [零基础学JAVA]Java SE基础部分-04. 分支、循环语句
转自:http://redking.blog.51cto.com/27212/116751 1.课程名称:分支.循环 本季为JAVA程序中最重要的部分,在讲解的时候除了讲解各种主要的控制语句(分支语句 ...
- python分支和循环结构
本文收录在Python从入门到精通系列文章系列 1. 分支结构 1.1 应用场景 迄今为止,我们写的Python代码都是一条一条语句顺序执行,这种代码结构通常称之为顺序结构.然而仅有顺序结构并不能解决 ...
- 九天学会Java,第四天,循环结构
变量和数据类型,赋值和输出 算术运算 选择结构 循环结构 函数定义,函数调用 变量作用域 栈,程序运行的基石 面向对象 异常处理 语言提供的公用包 这次我们讲Java的循环结构.循环结构在编程中广泛使 ...
- Java05-Java基础语法(四)循环结构
Java05-Java基础语法(四)循环结构 循环结构(重复/迭代):根据条件重复执行部分语句 1.while循环结构 while(条件表达式){ 循环体语句; } 1)语法:a.while是关键字 ...
- Java基础-比较运算符Compare Operators
Java基础-比较运算符Compare Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关系运算符 关系运算符包括: 1>.大于(>) 2> ...
- Java基础-算术运算符(Arithmetic Operators)
Java基础-算术运算符(Arithmetic Operators) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Java程序通过运算符实现对数据的处理,Java中的运算符包括: ...
随机推荐
- 基本算法思想之穷举法(C++语言描述)
穷举算法(Exhaustive Attack method)是最简单的一种算法,其依赖于计算机的强大计算能力来穷尽每一种可能性,从而达到求解问题的目的.穷举算法效率不高,但是适应于一些没有规律可循的场 ...
- 【Redis】Redis事务详解,Redis事务支持回滚(不支持悲观锁)
1.redis事物参考:https://baijiahao.baidu.com/s?id=1613631210471699441&wfr=spider&for=pc (php操作red ...
- glib-2.40编译安装
1 安装glib库所需要的依赖库: libffi-.tar.gz glib-.tar.xz 安装依赖库libffi: tar xf libffi-.tar.gz cd libffi- ./config ...
- Entity Framework Code-First(9.2):DataAnnotations - TimeStamp Attribute
DataAnnotations - TimeStamp Attribute: TimeStamp attribute can be applied to only one byte array pro ...
- fsck修复系统断电或非正常关机导致的系统磁盘问题
问题描述: unexpected inconsistency; run fask mannally. (i.e., without -a or -p options) fsck repaire man ...
- Library学习日志(……)
添加Library在buildpath中,就是右键工程->properties->java buildpath->Libraries 然后点击add Library就是添加Libra ...
- npm ERR! Unexpected token in JSON at position 0 while parsing near '<HTML> 解决办法
npm ERR! Unexpected token in JSON at position 0 while parsing near '<HTML> npm ERR! <!--/// ...
- 打开Visual Studio Code,rg.exe占用CPU过高
打开Visual Studio Code,再打开文件-首选项-设置 搜索“followSymlinks” 将“√”给取消掉
- 缓存处理类(MemoryCache结合文件缓存)
想提升站点的性能,于是增加了缓存,但是站点不会太大,于是不会到分布式memcached的缓存和redis这个nosql库,于是自己封装了.NET内置的缓存组件 原先使用System.Web.Cachi ...
- 关于goneaway及499
关于上面现象的分析如下 问题描述: 接口偶发性出现接口耗时过长的情况 根源: “sockets的快速回收”机制被启动 简单代码+数据分析: 1. 经简单分析,耗时主要出现在连接数据库的方法: ...