JAVASE day3
1.switch语句
格式:
switch (表达式) {
case 1:
语句体1;
break;
case 2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
执行流程:
1. 首先计算出表达式的值 ,表达式的值只能是byte,short,int,String,char,枚举
2.其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到 break就会结 束。
3.最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束 掉
1.2 switch案例-减肥计划
需求:键盘录入星期数,显示今天的减肥活动
周一:跑步
周二:游泳
周三:慢走
周四:动感单车
周五:拳击
周六:爬山
周日:好好吃一顿
示例代码:
public static void main(String[] args){
// 1. 键盘录入星期数据,使用变量接收
Scanner sc = new Scanner(System.in);
System.out.println("请输入");
int week = sc.nextInt();
// 2. 多情况判断,采用switch语句实现
switch(week){
// 3. 在不同的case中,输出对应的减肥计划
case 1:
System.out.println("跑步");
break;
case 2:
1.3 switch语句case穿透
概述 : 如果switch语句中,case省略了break语句, 就会开始case穿透
需求 : 键盘录入星期数,输出工作日、休息日 (1-5)工作日,(6-7)休息日
示例代码:
System.out.println("游泳");
break;
case 3:
System.out.println("慢走");
break;
case 4:
System.out.println("动感单车");
break;
case 5:
System.out.println("拳击");
break;
case 6:
System.out.println("爬山");
break;
case 7:
System.out.println("好好吃一顿");
break;
default:
System.out.println("您的输入有误");
break;
}
}
}
1.3 switch语句case穿透
概述 : 如果switch语句中,case省略了break语句, 就会开始case穿透
需求 : 键盘录入星期数,输出工作日、休息日 (1-5)工作日,(6-7)休息日
示例代码:
/*
case穿透是如何产生的?
如果switch语句中,case省略了break语句, 就会开始case穿透.
现象:
当开始case穿透,后续的case就不会具有匹配效果,内部的语句都会执行
直到看见break,或者将整体switch语句执行完毕,才会结束。
*/
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入星期数:");
int week = sc.nextInt();
switch(week){
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("工作日");
break;
case 6:
case 7:
System.out.println("休息日");
break;
default:
System.out.println("您的输入有误");
break;
}
}
}
2 for循环
2.1 循环语句-for循环
循环: 循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环 体语句,当反复 执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循 环,否则循环将一直执行下去,形成死循环。
for循环格式:
for (初始化语句;条件判断语句;条件控制语句) {
循环体语句;
}
格式解释:
初始化语句: 用于表示循环开启时的起始状态,简单说就是循环开始的时候什么样
条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能一直执行下去
循环体语句: 用于表示循环反复执行的内容,简单说就是循环反复执行的事情
条件控制语句:用于表示循环执行中每次变化的内容,简单说就是控制循环是否能执行下去
执行流程:
①执行初始化语句
②执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
③执行循环体语句
④执行条件控制语句
⑤回到②继续
2.2 for 循环案例-输出数据1-5和5-1
需求:在控制台输出1-5和5-1的数据
示例代码:
public class ForTest01 {public static void main(String[] args) {//需求:输出数据1-5for(int i=1; i<=5; i++) {System.out.println(i);}System.out.println("--------");//需求:输出数据5-1for(int i=5; i>=1; i--) {System.out.println(i);}}
}
2.3for 循环案例-求1-5数据的和
需求:求1-5之间的数据和,并把求和结果在控制台输出
示例代码:
public class Demo1{public static void main(String []args){//定义一个变量存储求和的值int sun=0;for(int i=1;i<=5;i++{sun+=i;}System.out.println(sun);}
}
3. while 循环
while 循环完整格式:
初始化语句;
while (条件判断语句) {循环体语句;条件控制语句;
}
while循环执行流程:
①执行初始化语句
②执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
③执行循环体语句
④执行条件控制语句
⑤回到②继续
示例代码:
public class WhileDemo {
public static void main(String[] args) {//需求:在控制台输出5次"HelloWorld"//for循环实现for(int i=1; i<=5; i++) {System.out.println("HelloWorld");}System.out.println("--------");//while循环实现int j = 1;while(j<=5) {System.out.println("HelloWorld");j++;}}
}
4.1 循环语句-dowhile循环
完整格式:
初始化语句;
do {循环体语句;条件控制语句;
}while(条件判断语句);
执行流程:
① 执行初始化语句
② 执行循环体语句
③ 执行条件控制语句
④ 执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
⑤ 回到②继续
示例代码:
public class DoWhileDemo {
public static void main(String[] args) {//需求:在控制台输出5次"HelloWorld"//for循环实现for(int i=1; i<=5; i++) {System.out.println("HelloWorld");}System.out.println("--------");//do...while循环实现int j = 1;do {System.out.println("HelloWorld");j++;}while(j<=5);}
}
5.0Random随机数
概述: Random类似Scanner,也是Java提供好的API,内部提供了产生随机数的功能
API后续课程详细讲解,现在可以简单理解为Java已经写好的代码
使用步骤:
1. 导入包 import java.util.Random;
2. 创建对象 Random r = new Random();
3. 产生随机数 int num = r.nextInt(10);
解释: 10代表的是一个范围,如果括号写10,产生的随机数就是0-9,括号写20,参数的随 机数则是0-19
示例代码:
import java.util.Random;
public class Demo1Random {
/*
Random : 产生随机数
1. 导包 : import java.util.Random;
导包的动作必须出现在类定义的上面
2. 创建对象 : Random r = new Random();
上面这个格式里面,r 是变量名,可以变,其他的都不允许变
3. 获取随机数 : int number = r.nextInt(10); //获取数据的范围:[0,10) 包括0,
不包括10
上面这个格式里面,number是变量名,可以变,数字10可以变。其他的都不允许
变
需求: 产生随机数1-10之间的
*/
public static void main(String[] args){
// 2. 创建对象
Random r = new Random();
for(int i = 1; i <= 10; i++){
// 3. 获取随机数
int num = r.nextInt(10) + 1; // 1-10
System.out.println(num);
}
}
}
JAVASE day3相关推荐
- JavaSE总结知识点 重要的点(并不是详细的教材语录)
JavaSE总结知识点 9天看完 Day1 一.Java基础概述 1.常用DOS命令 2.Java发展史 3.Java语言特点 4.JVM.JRE.JDK 5.Java和C++的区别 6.import ...
- 【JavaSE】day03_Date、SimpleDateFormat、Calendar、Collection
[JavaSE]day03_Date.SimpleDateFormat.Calendar.Collection 1.Date及其经常使用API 1)JAVA 中的时间 Java中的时间使用标准类库的D ...
- java视频为什么这么多_为什么看java教学视频教的都是javase,两者难道语言相同吗?...
Java 分类 Java SE(Java Platform Standard Edition) :Java平台标准版.主要用于桌面应用程序的开发,是Java技术的核心,提供基础 Java开发工具.执行 ...
- 简述JavaME,JavaSE,JavaEE
javaME:微型版,应用于移动等 JavaSE:标准版,应用于桌面环境 JavaEE:企业版,应用于基于Java的应用服务器 Java SE(Java Platform,Standard Editi ...
- javaee, javaweb和javase的区别以及各自的知识体系
javaee, javaweb和javase的区别以及各自的知识体系 来源 https://blog.csdn.net/weixin_39297312/article/details/79454642 ...
- 纪中2018暑假培训day3提高a组改题记录(混有部分b组)
day3 模拟赛,看了看a组题,发现是博弈论,非常开心(因为好玩),于是做的a组.结果差点爆零,死命纠结t1的sg函数,但其实只是一个dp,不用扯到sg函数的那种. t1: Description 被 ...
- Java 基础入门随笔(1) JavaSE版——java语言三种技术架构
1.java语言的三种技术架构: J2SE(java 2 Platform Standard Edition):标准版,是为开发普通桌面和商务应用程序提供的解决方案.该技术体系是其他两者的基础,可以完 ...
- javaSE基础04
javaSE基础04 一.三木运算符 <表达式1> ? <表达式2> : <表达式3> "?"运算符的含义是: 先求表达式1的值, 如果为真, ...
- Python学习记录day3
2019独角兽企业重金招聘Python工程师标准>>> Python学习记录 day3 今天是银角大王武sir讲课.先回顾了上节课所学,然后讲到了面向对象思想. set set是一个 ...
最新文章
- 汉印标签打印机app_旅行一族福音 汉印CP4000L便携照片打印机体验
- 蓝桥杯Java输入输出相关
- 手机数控模拟器安卓版_车床模拟器2手机版下载-车床模拟器2游戏 v2.5.0安卓版_5577安卓网...
- Ajax中GET和POST的区别
- python左右同时对齐_python怎么对齐
- python key lambda_使用“key”和lambda表达式的python max函数
- 【渝粤教育】国家开放大学2018年春季 0675-22T中级财务会计(2) 参考试题
- Illustrator 描边,填充,扩展
- 京东宣布全员涨薪两个月! 打工人流下了羡慕的泪水
- CSS级联样式表-css选择器
- mysql duplicate id_mysql 使用ON DUPLICATE KEY UPDATE 时导致的自增主键id无限增大问题
- [Hive]Hive表文件压缩介绍
- 剑指offer:2.二维数组的查找(Java版)
- 计算机如何隐藏任务栏的程序,电脑系统教程_电脑如何隐藏任务栏图标
- 信息系统项目管理师真题2017下半年附答案解析(1)
- 电流感应放大器应用技术要点
- python手机话费_Python软件测试中“电话费”问题的解决方案,python,版本,账单,题解...
- cookbook 6.1 温标的转换
- vue3路由切换时的动画效果
- win10如何配置maven仓库
热门文章
- 周志华 《机器学习》之 第十一章(特征选择与稀疏学习)概念总结
- tp5 批量更新多条记录_Thinkphp怎么批量更新数据
- 男人做事,要克服这些心理弱点
- CC2530定时器3
- 开发中的自动化——按键精灵AutoIt
- uniapp 页面跳转链接
- dubbo负载均衡。
- 基于 java+springboot+vue 的酒店⺠宿⽹站250910
- 百度飞桨第一课|让人拍案叫绝的创意都是如何诞生的?
- Linux查看当前ssh登录数,linux /centos 查看ssh登陆日志,从SSH登录情况分析服务器安全...