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.列举常 ...
随机推荐
- Innodb中怎么查看锁信息
一.前言 上一篇说了下innodb中锁的大概意思, 这篇说说怎么查看加的哪些锁.不然后续出现死锁或者锁等待都不知道为什么. 二.底层基础表信息 在学会如何查看有哪些锁信息时, 需要了解一些基础表信息, ...
- SQL 练习36
查询不同课程成绩相同的学生的学生编号.课程编号.学生成绩 select a.cid, a.sid, a.score from sc as a,sc as b WHERE a.sid = b.sid a ...
- MySQL指定ip和端口连接数据库,并修改数据库密码
一.指定ip和端口连接数据库 命令 mysql -u root -h (ip) -P (端口)-p 假设ip是:127.0.0.1:端口是:13326,连接的命令: mysql -u root -h ...
- yum clean all大坑解决
在Centos7系统中执行yum clean all 之后,发现yum的其他执行都报错了: 要解决,关键在这里: 把/var/cache/yum/ 下面的文件删除了 接下来,如果执行yum repol ...
- 物联网协议Coap协议介绍
COAP协议简介 Coap(Constrained Application Protocol)是一种在物联网世界的类web协议,它的详细规范定义在 RFC 7252.COAP名字翻译来就是" ...
- C#多线程---委托实现异步
一.概述 通过调用ThreadPool的QueueUserWorkItem方法来来启动工作者线程非常方便,但委托WaitCallback指向的是带有一个参数的无返回值的方法. 如果我们实际操作中需要有 ...
- RapidSVN设置diff和edit工具
菜单栏 -> View -> Preferences -> Programs选择相应的配置页即可 需要配置的路径,默认都在 /usr/bin目录下的 editor可以用ged ...
- freeswitch的event事件处理
概述 之前的文章中,我们讲解了freeswitch的源码基本结构,如何新增一个插件式模块,以及如何在模块中新增一个命令式API接口和APP接口. freeswitch本身是事件驱动的,它可以并发响应多 ...
- Java 登录模块设计
登录流程 前端登录传输用户名和md5加密后的密码 后端对密码在进行md5加密,或者使用md5加密的密码 + id 进行盐加密,增加密码被破解的难度. 登录成功后,这里分成单体,或者分布式的情况 单体 ...
- 【良心保姆级教程】java手把手教你用swing写一个学生的增删改查模块
很多刚入门的同学,不清楚如何用java.swing去开发出一个系统? 不清楚如何使用java代码去操作数据库进行增删改查一些列操作,不清楚java代码和数据库(mysql.sqlserver)之间怎么 ...