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.列举常 ...
随机推荐
- 谈谈ARM运行C程序的内部机制
文章目录 一.代码 二.知识储备 1.ARM汇编指令 2.寄存器知识 三.代码解析 1.指令分析 第一条指令: 第二条指令: 第三条指令: 第四条指令: 第五.六条指令: 第七条指令: 第八.九.十条 ...
- uwp 之吐司 toast
Toast -------------------------------------------------------------- var t = Windows.UI.Notification ...
- 【spring】69道Spring面试题和答案
原文地址:http://ifeve.com/spring-interview-questions-and-answers/ 目录 Spring 概述 依赖注入 Spring beans Spring注 ...
- 安装Ubuntu服务器版 + 远程连接ssh +更换阿里云源
安装Ubuntu服务器版 1.点击 "开启此虚拟机",开始安装. 2.默认选择English,英文版安装,直接按Enter键即可. 3.默认选择"Install Ubun ...
- linux下设备驱动的结构&编译&加载
构造和运行模块 insmod modprobe rmmod 用来装载模块到正运行的内核和移除模块的用户空间工具. #include<linux/init.h> module_init(in ...
- JobExecutionContext中的JobDataMapjob与Detail与Trigger中的JobDataMapjob
public static void main(String[] args) { //配置模式 build模式 //1.实例一个JOB JobDetail jobDetail = JobBuilder ...
- 微信小程序的button按钮设置宽度无效
亲,你是不是也遇到了微信小程序的button按钮设置宽度无效.让我来告诉你怎么弄 方法1. 样式中加入!important,即:width: 100% !important; wxss代码示例 1 2 ...
- Mybatis原理和代码剖析
参考资料(官方) Mybatis官方文档: https://mybatis.org/mybatis-3/ Mybatis-Parent : https://github.com/mybatis/par ...
- BUUCTF-[CISCN2019 华东北赛区]Web2
BUUCTF-[CISCN2019 华东北赛区]Web2 看题 一个论坛,内容不错:) 可以投稿,点击投稿发现要注册,那就先注册登录.随便账号密码就行. 常规操作,扫一下站点,发现有admin.php ...
- Python中的文件处理和数据存储json
前言:每当需要分析或修改存储在文件中的信息时,读取文件都很有用,对数据分析应用程序来说尤其如此. 例如,你可以编写一个这样的程序:读取一个文本文件的内容,重新设置这些数据的格式并将其写入文件,让浏览器 ...