Java学习之==>条件判断、循环控制
一、条件判断
1、if-else


示例:
/**
* 第1种,1个分支
*/
public void case1() { int age = 15;
if (age > 18) {
System.out.println("成年人");
}
} /**
* 第2种,2个分支
*/
public void case2() { int age = 15;
if (age > 18) {
System.out.println("成年人");
} else {
System.out.println("未成年人");
}
} /**
* 第3种,多个分支
*/
public void case3() {
int num = 0;
if (num > 10) {
System.out.println("");
} else if (num > 20) {
System.out.println("");
} else if (num > 30) {
System.out.println("");
} else if (num > 40) {
System.out.println("");
} else if (num > 50) {
System.out.println("");
} else {
System.out.println("");
}
}
2、switch-case

示例:
/**
* 字符串数据作为表达式
*
* break关键字
*
* default关键字
*
* 可以作为switch表达式的数据类型: byte,short,char,int,枚举,String
*/
public void case1() {
String str = "你好";
switch (str) {
case "你好":
System.out.println("跟我打招呼");
break;
case "尼玛":
System.out.println("这是要干架");
break;
case "嘿嘿嘿":
System.out.println("这可能是要搞基");
break;
default:
System.out.println("不懂你要说啥");
}
} /**
* 多个常量落进相同的逻辑处理
*/
public void case2() {
// type=1, 支付宝,
// type=2, 微信
// type=3, 京东
// type=4, 易宝
int type = 4;
switch (type) {
case 1:
case 2:
case 3:
System.out.println("互联网支付");
break;
case 4:
case 5:
case 6:
case 7:
System.out.println("非互联网支付");
break;
default:
System.err.println("出错啦, 不支持的类型");
}
}
总结:
相同点
- 都是一种逻辑分支的处理,语义: 要么你,要么我,要么他
- 都有兜底的语句,if是else, switch是default
不同点
- if-else 是一个范围的判断,如 小于10,大于100
- switch-case 是精确的等值分支
注意
- 使用switch的都可以使用if-else改写,反之不成立
- 逻辑要兜住, else, default很重要
二、循环控制
1、for循环

示例:
/**
* @author Luolei
* @date 2019/8/24
*/
public class Test1 { /**
* 最基本的循环,打印1到100内的偶数
*/
public void case1() {
for (int i = 2; i <= 100; i += 2) {
System.out.println(i);
}
} /**
* 死循环
*/
public void case2() {
for (; ; ) {
System.out.println("哈哈哈");
}
} /**
* continue
*
* break
*/
public void case3() {
for (int i = 0; i <= 10; i++) {
System.out.println("yes"); if (i % 2 == 0) {
// 结束当前循环,进入下一次循环
continue;
}
if (i == 9) {
// 跳出循环
break;
}
System.out.println(i);
}
} /**
* 循环一个数组或list
*/
public void case4() {
int[] arr = {1,2,3,4};
for (int i : arr) {
System.out.println(i);
}
}
2、while循环

示例:
/**
* 最基本的循环,打印1到10
*/
public void case1() {
// init
int i = 1; // test
while (i <= 10) { // body
System.out.println(i); // update
i++;
}
} /**
* 死循环,条件没有结束的时候
*/
public void case2() { while (true) {
System.out.println("死循环");
}
} /**
* continue && break
*/
public void case3() { int i = 1;
while (i <= 100) { if (i % 2 == 0) {
i++;
// 结束当前循环,进入下一次循环
continue;
}
if (i == 9) {
// 跳出循环
break;
}
System.out.println(i);
i++;
}
}
3、do-while循环

示例:
/**
* 最基本的循环,打印1到10
*/
public void case1() {
// init
int num = 0; do {
// body
System.out.println("进入循环体"); // update
num++;
} while (num < 10);
} /**
* 死循环
*/
public void case2() {
// init
int num = 1; do {
// body
System.out.println("进入循环体"); // update
} while (num == 1);
} /**
* continue && break
*/
public void case3() { // init
int num = 1; // body
do {
System.out.println("进入循环体");
if (num % 3 == 0 ) {
num++;
continue;
}
if (num % 5 == 0 ) {
break;
}
num++;
// update
} while (num <= 100);
}
总结:
组成
- 循环控制均可抽象成四部分
- init 初始化
- test 条件测试
- body 循环体代码
- update 迭代变更
注意
- 一定要注意循环的退出条件,不要造成死循环
- 即使不死循环,也要注意循环的次数
- do-while至少需要执行一次然后再判断条件
Java学习之==>条件判断、循环控制的更多相关文章
- Java学习-030-JSON 之四 -- 判断 JSONObject 是否包含键值对
前文对获取 JSON 数据封装方法,使之可通过类似于 cssSelector 的方法获取 JSON 数据,使获取数据变得简单.敬请参阅:模仿 cssSelector 封装读取 JSON 数据方法. 在 ...
- Shell学习(六)——条件判断总结
Shell学习(六)--条件判断总结 [1]https://www.cnblogs.com/zhw-626/p/8528001.html [2]https://www.cnblogs.com/yizh ...
- Shell学习笔记 - 条件判断式
1. 判断格式 1) test 参数 文件 例: test -e /root/install.log 2) [ 参数 文件 ] -- 推荐使用 例: [ -e /root/install.log ] ...
- python学习第六天 条件判断和循环
总归来讲,学过C语言的同学,对条件判断和循环并不陌生.这次随笔只是普及一下python的条件判断和循环对应的语法而已. 条件判断: 不多说,直接贴代码: age = 23 if age >= 6 ...
- Python学习之条件判断和循环
#coding= utf-8 # 条件判断和循环 # 如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做 age1 = 20 if age1 >= 18: prin ...
- python学习_条件判断语句_if
#条件判断语句(if)#语法:if条件表达式:语句# 代码块#执行流程:if语句在执行时,会先对条件表达式进行求值判断#如果为True,则执行if后面的语句#如果为False,则不执行#默认情况下,i ...
- Python学习笔记—条件判断和循环
条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age >= ...
- Ruby学习中(条件判断, 循环, 异常处理)
一. 条件判断 详情参看:https://www.runoob.com/ruby/ruby-decision.html 1.详情实例(看看就中了) #---------------# # LOL场均人 ...
- Python学习之==>条件判断
1.单条件判断 # 接收输入的值,使用input函数,用input接收输入的值都是string类型的 age = input('请输入你的年龄:') age = int(age) # 类型转换,转换成 ...
随机推荐
- IList,List<T>转换为DataTable 常用收藏
List<info> infos = Dal.GetInfos(); DataTable dt = new DataTable(); dt.Columns.Add("cName& ...
- oracle exp 和 imp 数据和表结构互相独立导出导入
1)只导入数据.不到导入表结构 不可能只导出数据而不导出表结构 这里做了一个变向处理可以在imp时使用ignore=Y选项就可以了,而不报错. 这样就可以实现把数据导入到原来的表里: imp user ...
- svn提交报错 解决方法
1.先clean 2.删除 .lock文件 3.update项目 4.先还原文件,然后update 接着commit
- 亲爱的SAP从业者们,烦请做个SAP知识学习种类的小调查
"世上再也没有比时钟更加冷漠的东西了:在您出生的那一刻,在您尽情地摘取青春幻梦的花朵的时刻,它都是同样分秒不差地滴答着." -- 高尔基 2019年马上又要离我们而去了,从2018 ...
- vue admin element
vue.package.js 修改 publicPath: './',
- django初步--+urls解析
1.静态文件配置: 你在浏览器中输入网址能够有响应的资源返回给你 是因为后端已经提前给你开设该资源的接口,也就意味着你所能 访问到的资源 都是人家事先定义好的. 2.django如何给用户开设资源接口 ...
- node的安装和配置教程
node,除了做数据服务处理,还是各大框架的环境依赖,作为前端开发人员,node是必不可少的.好了,接下来直接开始. 一.根据自己的安装环境(即你的电脑系统版本)下载对应安装包,官网地址:https: ...
- C# 编辑
if (state == "编辑") { ht["修改人"] = Helper.用户名; ht["修改时间"] = DateTimeHelp ...
- CF1043F Make It One 容斥+dp+组合
考试的时候考的一道题,感觉挺神的. 我们发现将所有数去重后最多只会选不到 $7$ 后 $gcd$ 就会变成 $1$. 令 $f[i][k]$ 表示选 $i$ 个数后 $gcd$ 为 $k$ 的方案数. ...
- NOI数论姿势瞎总结(Pi也没有)
Miller-Rabin素数检测 费马小定理:没人不会吧. 二次探测:如果\(n\)是质数,\(x^2 \equiv 1\ (\mod n)\)的解只有\(x \equiv 1\)或\(x \equi ...