Java学习之随堂笔记系列——day03
内容回顾:
1.标识符和类型转换
1.1 标识符:给类、方法、变量取得名字就是标识符。
命名规则:
1.必须是字母、数字、_、$组成
2.不能以数字开头
命名规范:
小驼峰式和大驼峰式。
类型转换:
自动类型转换:小范围类型的数据保存到大范围类型的变量,就是自动类型转换。
强制类型转换:大范围类型的数据保存到小范围类型的变量,就需要强制类型转换
小范围类型 变量=(小范围类型)大范围类型的数据;例如:int a=(int)13.14;
2.运算符
算术运算符
+ - * / %
赋值运算符
= += -= *= /= %=
例如:a+=10相当于a=a+10;a+=10隐含了一个强制类型转换
自增自减运算符
++ --
前置++(++a)和后置++(a++)
单独使用:前置++和后置++没有任何区别。
参与运算或者输出:
前置++:先+1,再使用;
后置++:先使用,后+1;
比较运算符
== != > >= < <=
逻辑运算符
&和&&:两端都是true,结果才是true。&&有短路效果。
|和||:两端都是false,结果才是false,||有短路效果。
!:如果本身是true,取反之后就是false。
三元运算符(常用)
数据类型 变量名=比较表达式?值1:值2;
3.键盘录入
1.在类名上面导包
import java.util.Scanner;
2.创建对象
Scanner sc=new Scanner(System.in);
3.接收数据
接收整型数据:
int a=sc.nextInt();
接收字符串:
String s=sc.next();或者String s=sc.nextLine();
今日内容
1.选择结构
1.1 if结构(重点1)
单if结构:一种情况的判断
if(关系表达式){
//语句体,就是要执行代码。
}
执行流程:
1.判断关系表达式的结果是true还是false
2.如果关系表达式的结果是true,那么就执行{}中的语句体,否则就不执行。
if...else...结构:两种情况的判断
if(关系表达式){
//语句体1
}else{
//语句体2
}
执行流程:
1.判断关系表达式的结果是true还是false
2.如果关系表达式的结果是true,那么执行if中的语句体1
3.如果关系表达式的结果是false,就执行else中的语句体2
if...else if......else...:多种情况的判断
if(关系表达式1){
//语句体1
}else if(关系表达式2){
//语句体2
}
...
else if(关系表达式n){
//语句体n
}else{
//else语句体
}
执行流程:
1.判断关系表达式1的结果是true还是false
2.如果关系表达式1的结果是true,那么就执行语句体1,否则,判断关系表达式2的结果是true还是false
3.如果关系表达式2的结果是true,那么就执行语句体2,否则,重复2,3步。
4.如果所有的if和else if关系表达式结果都是false,最后执行else的语句体。
1.2 switch结构(了解)
switch(变量){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default:
语句体n;
break;
}
执行流程:
1.判断变量的值是否等于值1,如果等于,那么就执行语句体1,遇到break就结束了。如果不等于值1,进入第2步。
2.判断变量的值是否等于值2,如果等于,那么就执行语句体2,遇到break就结束了,如果不等于值2,重复1和2步。
3.最后如果变量的值都不等于给定的值,那么就执行default中的语句体。
细节:case穿透:如果某个case后面的语句体中没有break,那么就会不经过判断直接执行后面case的语句体,直到遇到
break才结束执行。或者整个switch执行完成了结束。
2.循环结构
2.1 for循环(重点2):如果想重复的执行一段代码,那么就可以使用循环
语法:
for(初始化语句;条件判断语句;条件控制语句){
//循环体,也就是要循环执行的代码
}
执行流程:
1.执行初始化语句
2.执行条件判断语句,如果判断条件的结果是true,如果为false,那么就结束循环。
3.执行循环体
4.执行修条件控制语句
5.重复2、3、4步。
例如:
for(int i=0;i<5;i++){
System.out.println("HelloWorld");
}
2.2 while循环(重点3)
语法:
初始化语句;
while(条件判断语句){
//循环体,也就是要循环执行的代码
//条件控制语句
}
执行流程:
1.执行初始化语句
2.执行条件判断语句,如果判断条件的结果是true,如果为false,那么就结束循环。
3.执行循环体
4.循环体执行完成了之后就执行条件控制语句
2.3 do...while循环
初始化语句;
do{
//循环体,也就是要循环执行的代码
//条件控制语句
}while(条件判断语句);
三种循环的区别:
for循环和其他两种循环的区别?
for循环初始化语句中的变量只能在for循环内部使用,而其他两种循环初始化语句中的变量可以在循环外使用。
do...while循环和其他两种循环的区别?
do...while循环至少会执行一次循环体,而其他两种循环可能不执行循环体。
死循环:
for(;;){
}
while(true){
}
Java学习之随堂笔记系列——day03的更多相关文章
- Java学习之随堂笔记系列——day01
学习方法:听.问.敲.悟听:前提:上课要听懂,没有听懂可以及时的问.问:任何的问题都要及时的问.敲:重点内容.多写多练,只有写和练习才能发现新的问题,有问题就问.悟:举一反三.提升自己.今日内容:1. ...
- Java学习之随堂笔记系列——day04
今日内容1.break和continue关键字以及循环嵌套 1.1 break和continue的区别? continue表示跳过当前循环,继续执行下一次循环break表示结束整个 ...
- Java学习之随堂笔记系列——day02
昨天内容回顾1.安装jdk和配置环境变量 配置JAVA_HOME和path,只要配置成功之后就可以直接使用java和javac命令.2.HelloWorld案例3.java的基础语法 注释:给程序的解 ...
- 《Java 8实战》读书笔记系列——第三部分:高效Java 8编程(四):使用新的日期时间API
https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Dat ...
- Django学习day13随堂笔记
每日测验 """ 今日考题 1.什么是django中间件,它的作用是什么,如何自定义中间件,里面有哪些用户可以自定义的方法,这些方法有何特点 2.基于django中间件的 ...
- java学习之路-分享笔记20150327
---恢复内容开始--- 2个月间,断断续续学习了一段时间java平台相关知识,慢慢梳理出来一些枝枝叶叶,和大家交流下.3年前用java边看边做写了一个项目,所以对语法不是很关注.需要原文档的留邮箱吧 ...
- Django学习day02随堂笔记
每日测验 """ 今日考题 1.谈谈你对web框架的认识,简述web框架请求流程 2.python三大主流web框架的区别 3.安装django需要注意的事项有哪些(最少 ...
- Django学习day12随堂笔记
每日测验 """ 1.什么是cookie和session,你能描述一下它们的由来和工作机制吗(切勿糊弄,敷衍了事) 2.django中如何操作cookie和session ...
- Django学习day08随堂笔记
今日考题 """ 今日考题 1.聚合查询,分组查询的关键字各是什么,各有什么特点或者注意事项 2.F与Q查询的功能,他们的导入语句是什么,针对Q有没有其他用法 3.列举常 ...
随机推荐
- 【设计模式】装饰者模式(DecoratorMode0
From: https://liudongdong1.github.io/ 装饰者模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,增加对象功能来说,装饰模式比生成子类实 ...
- 容器平台(kubernetes)架构设计
一眨眼距离上次发文好几年过去了,今天翻未读邮件看到博客有文章回复,猛然想起将博客遗忘在角落好几年了,赶紧访问博客.找回密码.翻翻文章,想写点什么但是又不知道从哪下手,N年前的第一篇文章是一个crm设计 ...
- Longhorn,企业级云原生容器分布式存储 - 定制默认设置
内容来源于官方 Longhorn 1.1.2 英文技术手册. 系列 Longhorn 是什么? Longhorn 云原生容器分布式存储 - 设计架构和概念 Longhorn 云原生容器分布式存储 - ...
- C#简单实现表达式目录树(Expression)
1.什么是表达式目录树 :简单的说是一种语法树,或者说是一种数据结构(Expression) 2.用Lambda声明表达式目录树: 1 2 3 4 5 Expression<Func<in ...
- 【C#】GC和析构函数(Finalize 方法)
析构函数: (来自百度百科)析构函数(destructor) 与构造函数相反,当对象脱离其作用域时(例如对象所在的函数已调用完毕),系统自动执行析构函数.析构函数往往用来做"清理善后&quo ...
- C# lock的语法糖原理--《.net core 底层入门》之自旋锁,互斥锁,混合锁,读写锁
在多线程环境中,多个线程可能会同时访问同一个资源,为了避免访问发生冲突,可以根据访问的复杂程度采取不同的措施 原子操作适用于简单的单个操作,无锁算法适用于相对简单的一连串操作,而线程锁适用于复杂的一连 ...
- 二进制I/O
1 import java.io.BufferedInputStream; 2 import java.io.BufferedOutputStream; 3 import java.io.DataIn ...
- spring动态切换数据源(一)
介绍下spring数据源连接的源码类:| 1 spring动态切换连接池需要类AbstractRoutingDataSource的源码 2 /* 3 * Copyright 2002-2017 the ...
- 前端调用后台接口下载word文档的两种方法
1传统的ajax虽然能提交到后台,但是返回的数据被解析成json,html,text等字符串,无法响应浏览器下载.就算使用bob模拟下载,数据量大时也不方便 废话不多说:上代码(此处是Layui监听提 ...
- Learning ROS: Using a C++ class in Python
http://wiki.ros.org/ROS/Tutorials/Using%20a%20C%2B%2B%20class%20in%20Python This tutorial illustrate ...