思维导图看不清楚时:

1)可以将图片另存为图片,保存在本地来查看

2)右击在新标签中打开放大查看

if语句

a) if语句

基本语法结构:

if(关系表达式) {

基本语句体

}

执行流程:

首先判断关系表达式看其结果是true还是false

如果是true就执行语句体

如果是false就不执行语句体

b) If else

语法结构:

if(关系表达式) {

语句体1;

}else {

语句体2;

}

执行流程

首先判断关系表达式看其结果是true还是false

如果是true就执行语句体1

如果是false就执行语句体2

c) 多重if

语法结构:

if(关系表达式1) {

语句体1;

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

语句体2;

}



else {

语句体n+1;

}

与if…else类似,判断为true,执行对应语句;否则走下面的代码

d) 嵌套if

指在if中再嵌套if的条件语句

Switch结构语句

细说语法

case后面跟的是要和表达式进行比较的值

语句体部分可以是一条或多条语句

break表示中断,结束的意思,用来结束switch语句

default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

思考

case的值可以相同吗?不可以

default可以省略吗?可以

break可以省略吗?不能,省略会发生break穿透

default的位置一定要在最后吗?不一定,不过一般默认放在后面

关于switch表达式的类型要求

JDK5以前表达式的取值:byte,short,int,char

JDK5以后可以是枚举

JDK7以后可以是String

if vs switch

switch 适用于等值判断,其他情况采用if

四种进制

二进制

由0,1组成。以0b开头

例如0b0001

八进制

由0,1,…7组成。以0开头

例如00001

十进制

由0,1,…9组成。整数默认是十进制的

十六进制

由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头

例如0x0111

位运算符

1.<< 左移 将操作数的二进制数整体左移指定位数,左移之后的空使用“0”来补充

2.>> 右移 将操作数的二进制数整体右移指定位数,右移之后的空使用“符号位”来补充

如果是正数,使用“0”补充

如果是负数,使用“1”补充

3.>>> 无符号右移,将操作数的二进制码整体右移指定位数,

右移之后的空位使用“0”来补充

4.& 任何二进制位和0进行&运算,结果是0;和1进行&运算,结果是它本身

5.| 任何二进制位和0进行|运算,结果是原值,和1进行|运算,结果是1

6.^ 任何相同二进制位进行^运算,结果是0;不相同的二进制位运算结果是1

扩展:负数的二进制位运算

无论正负数位运算执行步骤

所有数据的位运算都是使用补码进行的,即进行位运算时,需要先得到补码

1.必须要先通过原码–反码–补码,生成补码

2.进行位运算

3.在通过补码–反码–原码,最后得到结果

原码:二进制表示法,即最高位为符号位

“0”表示正数,

“1”表示负数

反码:负数的反码就是对其原码逐个取反(即1变为0,0变为1),但符号位不变。

补码:负数的补码是在其反码的末位加1

正数:原码,反码,补码都相同,因此正数可以直接运算

正数10

原码00001010

反码00001010

补码00001010

负数:原码,反码,补码都不相同

负数-10

原码:10001010

反码:11110101 (符号位不变,其他位取反)

补码:11110110

由补码来求原码

补码-1得到反码

反码逐个取反,得到原码

-10>>2,结果是-3

JavaSE教程-03Java中分支语句与四种进制转换-思维导图的更多相关文章

  1. JavaSE教程-03Java中分支语句与四种进制转换

    一.分支语句 计算机源于生活,程序模拟现实生活,从而服务生活 行为模式 1,起床,刷牙,洗脸,吃早餐,上课,回家,睡觉(顺序性) 2,如果时间不太够,打个滴滴快车,如果时间够,坐个地铁(选择性) 3, ...

  2. JavaSE教程-03Java中分支语句与四种进制转换-练习

    练习1: 老师如果带100或以上则请客吃饭 import java.util.Scanner; public class Test2{ public static void main(String[] ...

  3. JavaSE教程-04Java中循环语句for,while,do···while-思维导图

    思维导图看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 2)右击在新标签中打开放大查看

  4. javaSE_05Java中方法(函数)与重载、递归-思维导图

    思维导图看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 2)右击在新标签中打开放大查看

  5. JavaSE教程-04Java中循环语句for,while,do···while

    ** Java的循环语句 ** 引入: 生活中有循环,程序的世界也有循环. 思考:生活中有哪些循环的事情? 总结:什么是循环? 重复做类似的事情,而且有终止条件,如果没有终止条件会是怎样? 类似这样的 ...

  6. JavaSE教程-04Java中循环语句for,while,do···while-练习2

    1.编写一个剪子石头布对战小程序 该法是穷举法:将所有情况列出来 import java.util.*; public class Game{ public static void main(Stri ...

  7. JavaSE教程-04Java中循环语句for,while,do···while-练习

    0.实现打印50遍的"我爱你" 1.请在控制台输出数据1-10 2.请在控制台输出数据10-1 3.求出1-10之间数据之和 4.求出1-100之间能够被3整除的所有数的和 前四题 ...

  8. 怎么绘制C语言选择和循环语句的思维导图

    C语言是一门非常基础的计算机语言,是大部分本科学生的公共专业,在C语言的学习中,选择和循环语句是至关重要的部分,利用思维导图可以有效节约时间并加深知识点记忆. 接下来就为大家介绍一下我用iMindMa ...

  9. MindManager教程:高中数学函数思维导图怎么画

    说起函数,大家应该都不陌生吧,函数不论是在初中还是在高中都是需要重点学习的知识点,不仅仅是重点,更是作为难点曾出现在高考最后一道大题中.那今天我们就来做一个函数思维导图,来简单地了解一下关于函数的一些 ...

随机推荐

  1. Java Comparator的范型类型推导问题

    问题 在项目中,有一处地方需要对日期区间进行排序 我需要以日期区间的开始日为第一优先级,结束日为第二优先级进行排序 代码 我当时写的代码如下: List<Pair<LocalDate, L ...

  2. spring学习总结二-----面向切面编程(AOP)思想

    上一篇spring博客简总结了spring控制反转和依赖注入的相关思想知识点,这篇博文对spring的面向切的编程思想进行简单的梳理和总结. 一.面向切面的思想 与面向对象的纵向关系概念不同,面向切面 ...

  3. vscode同步设置&扩展插件

    首先安装同步插件: Settings Sync 第二部进入你的github如图:  打开设置选项: 新建一个token: 如图:  记住这个token值 转到vscode 按shift+alt +u ...

  4. com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method findUserByUserNo in the service wusc.edu.facade.user.service.PmsUserFacade.

    017-04-25 10:55:30,505 INFO [AbstractRegistry.java:302] : [DUBBO] Register: consumer://192.168.1.101 ...

  5. windows下批量换程序——运维常用

    Windows一批机器,需要批量换程序.写个脚本给大家. net stop sharedaccess (关闭防火墙) del /s d:\*.log d:\*.vbs d:\*.pdb d:\*.vb ...

  6. 如何在Linux下快速安装MapTiler

    研究背景:          实际项目用到MapTiler时,为了适应项目不同场景需求,需要测试MapTiler在linux下切图速度,这时就涉及到到MapTiler在Linux下安装的问题,从  M ...

  7. 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字。 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值。这里保证n小于10的100次幂。 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格。 输入样例: 1234567890987654321123456789 输出样例: yi san wu

    这是PAT中的一道练习题 刚开始的时候我想着直接定义正整数n,结果走了很大的弯路,因为题目中要求n小于10的100次幂,即最大的正整数n有100位,而C语言中整型数字最大占8个字节的存储空间,如果按无 ...

  8. 使用font-size:0去掉inline-block元素之间的空隙

    现代浏览器的最新版都支持inline-block,只有该死的ie6.7不支持inline-block,但ie6.7可以通过 display:inline: zoom:1: 来模拟 下面是inline- ...

  9. Mysql存储过程使用LEAVE实现MSSQL存储过程中return语法

    DELIMITER $$ USE `qrsoft_dyj_db`$$ DROP PROCEDURE IF EXISTS `proc_withdraw_approve`$$ CREATE PROCEDU ...

  10. 建造者(Builder)模式

    建造者模式是对象的创建模式.建造模式可以将一个产品的内部表象(internal representation)与产品的生产过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象. 产品的 ...