Java学习之随堂笔记系列——day04
今日内容
1.break和continue关键字以及循环嵌套
1.1 break和continue的区别?
continue表示跳过当前循环,继续执行下一次循环break表示结束整个循环。
案例:
public static void main(String[] args) {
//1.定义一sum变量累加
int sum=0;
//2.键盘录入,导包、创建对象、接收数据
Scanner sc=new Scanner(System.in);
//3.使用while循环接收数据
while(true){
//接收数据
int num=sc.nextInt();
//判断是否是0,如果是0那么就跳出循环
if(num==0){
break;
}
//累加
sum+=num;
}
//打印结果
System.out.println("sum="+sum);
}
1.2 循环嵌套:一般是两层循环的嵌套
for(初始化语句;条件判断语句;条件控制语句){
//循环体
for(初始化语句;条件判断语句;条件控制语句){
//循环体
}
}
例如:
for(int i=1;i<=5;i++){
for(int j=1;j<=5;j++){
//循环体
}
}
执行流程:
当i=1时,内循环的j从1到5都会循环执行一次;
当i=2时,内循环的j从1到5都又会循环执行一次;
...
外循环的i每改变一次,内循环都需要循环5次
案例:九九乘法表
public class ForTest4{
public static void main(String[] args) {
for(int i=1;i<=9;i++){
//内循环执行完了之后就会在一行打印9个@ @@@@@@@@@
for(int j=1;j<=i;j++){
System.out.print(i+"*"+j+"="+(i*j)+"\t");
}
//换行
System.out.println();
}
}
}
2.随机数据使用步骤
1.在类上面导包
import java.utils.Random;
2.创建对象
Random r=new Random();
3.获取随机数
int num=r.nextInt(随机数的最大值,但不包括这个值);
案例:猜数字
public static void main(String[] args) {
//要完成猜数字的游戏,首先需要有一个要猜的数字,使用随机数生成该数字,范围1到100
Random r = new Random();
int number = r.nextInt(100) + 1;
while(true) {
//使用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入实现
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数字:");
int guessNumber = sc.nextInt();
//比较输入的数字和系统产生的数据,需要使用分支语句。这里使用if..else..if..格式,根据不同情况进行猜测结果显示
if(guessNumber > number) {
System.out.println("你猜的数字" + guessNumber + "大了");
} else if(guessNumber < number) {
System.out.println("你猜的数字" + guessNumber + "小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
3.idea开发工具的安装、使用
常见的快捷键:
快速生成语句
快速生成main()方法:psvm,回车
快速生成输出语句:sout,回车
.var自动生成=左边的变量
soutv自动打印变量名和值
数组名.fori + 按回车
内容辅助键
Ctrl+Alt+space(内容提示,代码补全等)
快捷键:
注释:
单行:选中代码,Ctrl+/,再来一次,就是取消
多行:选中代码,Ctrl+Shift+/,再来一次,就是取消
格式化
Ctrl+Alt+L
4.数组
数组:能够一次性存储多个同类型数据的结构。
数组的定义格式和初始化:
推荐:数据类型[] 数组名;
例如:int[] arr;
创建并初始化:
动态初始化:创建数组的时候指定数组的长度并有系统赋予默认值。
数据类型[] 数组名=new 数据类型[长度];例如:
int[] arr=new int[3];
静态初始化:创建数组的时候指定初始化值,有系统根据值确定长度。
复杂的写法:数据类型[] 数组名=new 数据类型[]{值1,值2,...};
简化的写法:数据类型[] 数组名={值1,值2,...};
例如:int[] arr={100,200,300};
访问数组:
打印数组名称:结果是地址值,数组内存中占用的空间的编号。相当于教室的门牌号
获取值:
数据类型 变量名=数组名[索引];可以使用变量接收,也可以直接打印 例如: int a=arr[0];
赋值(存值):
数组名[索引]=值;
获取长度:
int length = 数组名.length; //.var自动生成左边的变量
注意事项:索引的初始值从0开始,最大值数组的长度-1;
常见的小问题:
1.数组索引越界异常:
ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5
2.空指针异常:.前面的对象是null就会出现空指针异常
Exception in thread "main" java.lang.NullPointerException
Java学习之随堂笔记系列——day04的更多相关文章
- Java学习之随堂笔记系列——day01
学习方法:听.问.敲.悟听:前提:上课要听懂,没有听懂可以及时的问.问:任何的问题都要及时的问.敲:重点内容.多写多练,只有写和练习才能发现新的问题,有问题就问.悟:举一反三.提升自己.今日内容:1. ...
- Java学习之随堂笔记系列——day03
内容回顾:1.标识符和类型转换 1.1 标识符:给类.方法.变量取得名字就是标识符. 命名规则: 1.必须是字母.数字._.$组成 2. ...
- 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.列举常 ...
随机推荐
- 题解 Lost My Music
传送门 多明显的斜率式然而我没有看出来 然而不管是我乱搞的思路还是正解的凸包思路都需要一个可持久化栈 考场上想到可持久化单调栈,但不会实现-- 其实单调栈不管是否可持久化都能倍增弹栈 但普通单调栈本来 ...
- 关于对String中intern方法的理解
在java的String中有个一直被我们忽视了的方法intern方法:它的官方解释是:一个初始时为空的字符串池,它由类 String 私有地维护. 当调用 intern 方法时,如果池已经包含一个等于 ...
- 使用Visual Studio分析dump
最近系统是不是CPU会飙升的百分之九十多甚至百分百,在本地又很难复现问题,无法定位问题出现在哪. 可以用转储文件来保存现场,然后通过分析dump文件可以大概分析出问题的所在 生成转存文件 在CPU飙升 ...
- springboot邮通知553错误和
com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user ; nested excepti ...
- BST B树 B+树
二叉排序树/二叉搜索树 (BST) 定义 左子树节点值<根节点值<右子树节点值 默认不允许两个节点的关键值相同 进行中序遍历可以得到递增的有序序列 查找效率 取决与树的高度,最好O(log ...
- 整理之Service
Service 基础 一个Service的基本结构 class MyService : Service() { private val mBinder = MyBinder() override fu ...
- 16 bit 的灰度图如何显示
16 bit 的灰度图如何在QT中显示 用Mat构造的 16 bit 灰度图 无法直接显示,需要转换成 8 bit 的灰度图在QT中显示, 使用OpenCV自带的最大最小值归一法, cv::norma ...
- Linux查看英伟达GPU信息
命令: nvidia-smi 结果:
- Java-Bean Validation后端校验总结
Validation Information resource: SpringBoot Docs: 2.8.9. @ConfigurationProperties Validation url: ht ...
- js实现钟表
在网页上显示一个钟表 html: <body onload="startTime()"> <div id="txt"></div& ...