1.代码块和变量的作用域
- 大括号括起来的就是代码块
- 有名字的代码块——if-else代码块,for循环代码块,main方法代码块
- 代码块也叫体:for循环体,main方法体
- 代码块可以嵌套
变量作用域
- 代码块里可以使用外层的代码块的变量
- 代码块外不可以使用内曾的便
- 可嵌套多层
- 同一个命名空间不可以重名
99乘法表
1 | public class MultiTable { |
2.程序循环之while语句
1 | while (条件表达式) |
查找除数增强版
1 | public class FindNDiv { |
do-while——至少执行一次
1 | do { |
死循环
- 无法结束的循环
3.程序执行流程之switch语句
- 使用if完成,但是略显不够整洁
- 能够根据两个值相比较,进入代码块最适合的情况
1 | switch (用于比较的值) { |
- switch中不同的case中不可以定义相同的变量
- 别忘记break;如果没有的化会不做判断直接执行后面的语句,default不会执行
- switch中的比较值必须是int
- default是可选的
4.循环和判断总结上
java中的注释
- 以//开始,到这一行结束
- 可以在行的开始注释,也可以在程序内容后面注释
- 多行注释/* */
生成指定范围内的随机数
- Math.random()生成随机数,在0到1之间,类型是double
- 生成指定范围随机数的思路
1 | int rangeStart = 30; |
5.循环和判断总结下
猜数字游戏
- 生成一个指定范围内的随机正整数,从命令行读取一个整数,如果和随机数相同算猜中
- 可以设置随机数范围
6.用数组表示成绩
数组特点
- 数组是相同类型变量的集合
- 可以指定数组的大小
- 有固定的顺序
- 每个元素都有编号,称为索引(index),从0开始
创建和使用数组的语法
- 数组元素类型[] 变量名 = new 数组元素类型[长度]
- 变量名[索引] 可以使用这个变量,也可以给他赋值
1 | int[] arr = new int[10]; |
7.认识变量和数组上
重新认识基本类型的变量
对计算机来说固定的是地址,变化的是值
内存就是一堆白纸,只能通过页码访问,也就是地址
计算机通过地址,读写地址对应内存的值,完成变量的赋值与访问的功能
变量名就是地址,变量的值就是地址的内存的值
数组的名与实
- 数组是一块地址连续的内存,
- 数组名,是这块连续内存的第一个内存的地址
- 数组变量[索引]就是在数组原有地址的基础上,加上索引,获得想要的元素
8.认识变量和数组下
使用数组的长度
- 数组变量.length可以获得数组的长度
- 数组创建之后,长度不可以改变
数组索引过界和初始值
- 访问数组过界的错误:IndexOutOfBoundException
- 数组中每个元素都有初始值,和类型有关,对于数字类型是0,boolean类型是false
让变量指向新的数组
- 数组变量可以指向新的数组实体。这时候,数组变量的值就是新的数组实体的值
- 如果没有别的数组变量指向原来的数组实体,原来的数组实体就不在可访问了
9.多维数组
示例代码
1 | int[][] array = new int[3][5]; |
10总结
处理成绩小程序
- 求某年最好成绩
- 求某年的平均成绩
- 求所有年组好成绩
- 求某门课历年最好成绩
1 | import java.util.Scanner; |