1、break 跳出 switch 循环
continue 用在循环中
break如何跳出指定的循环: 使用标记
2、什么是方法?完成特定功能的有名称的代码块
作用:代码复用
3、声明的语法:
public static void/数据类型 名(数据类型 参数名,数据类型 参数){
//方法体
return 变量
}
4、形参:声明方法时定义的参数
实参:调用方法时使用的参数
5、
public static int sum(int num){ int sum=0; for(int i=3; i<=num; i=i+3){ sum+=i; } return sum; }
6、main(){
//调用方法
int sum=sum(100);
}
7
1、作业讲解
2、数组的概念及声明
3、数组的赋值及获取元素
4、数组的遍历
5、数组的应用之排序
6、数组的其他应用
1、编写方法,给两个数,计算最大公约数
2、打印等腰三角形
分析:
二重循环:
外层:行数 3 4 3 4
内层:打印空格 找空格的规律 1行 2个空格 1 3
打印* 2 1 2 2
换行 3 0 3 1
4 0
空格的规律:空格的个数=总行数-当前行数
*的规律 *的个数=2*行数-1
3
1 1
2 3
3 5
问题:存放班级里35名同学的名字?
可以声明变量来存储,但是麻烦、繁琐
技术的升级:由变量 ----》数组
概念:是一组(若干个)数据类型相同的变量的集合
特点:1、同一个数组里的所有值,数据类型都相同
2、内存空间连续
3、存放元素的个数固定(不能动态加长、也不能缩短)
声明:创建数组、分配内存空间
public static void main(String[] args) { // TODO Auto-generated method stub //声明数组 array String[] aryName=new String[5]; //0 1 2 3 4 int[] aryScore=new int[5]; //数组的相关概念 //数组长度:数组里存放值的个数 //下标/索引:java给数组值的编号,第一个是0,以此类推 //数组元素/元素:就是数组里存放的值 //获取数组中的元素:数组名[索引] System.out.println(aryName[1]); System.out.println("最后一个成绩:"+aryScore[4]); //【注意】 数组的最大索引=数组长度-1 //数组索引范围:0 ~ 数组长度-1 //数组越界:访问数组时,超出索引的范围 ArrayIndexOutOfBoundsException //System.out.println(aryScore[5]); //给数组赋值 aryName[0]="1"; aryName[2]="2"; aryName[1]="3"; aryName[3]="4"; aryName[4]="5"; System.out.println(aryName[1]); }
名词解释:
数组长度:就是数组中存放值的个数
【说明】并不是在原数组的基础上增加长度,是创建一个更长的数组,然后把原数组的值,复制到新数组中
int[] aryScore={90,95,100,80,95}; //创建一个更长的数组 //1、确定新数组的长度 int newLength=aryScore.length+(aryScore.length/2); //2、创建新数组 int[] aryNewScore=new int[newLength]; //3、把值复制到新数组中
// for(int i=0; i<aryScore.length; i++){ // aryNewScore[i]=aryScore[i]; // } //方式2:System.arraycopy() //参数1:原数组 //参数2:从原数组的哪个位置开始复制 //参数3:复制得到哪个数组中,目标数组 //参数4:复制到目标数组的起始位置 //参数5:复制几个元素 System.arraycopy(aryScore, 0, aryNewScore, 0, aryScore.length); //方式3:Arrays.copyOf(aryScore, 7) //参数1:要赋值的原数组 //参数2:新数组的长度 //返回值:创建一个新长度的,并且已经复制了值的新数组 int[] aryNewScore2= Arrays.copyOf(aryScore, 10); //打印新数组 ArrayUtil.printIntAry(aryNewScore2);
基本类型:在传参的时候,是把值实参复制出一份,传递给形参 ,实参和形参对应的是两个空间里的值
引用类型:在传参的时候,把地址复制一份,传递个形参,形参地址和实参地址对应着同一个空间
今日总结:
1、作业的讲解:二重循环 方法
2、数组:为什么—简化变量的操作
什么是数组:是一组内存空间连续的数据类型相同的变量的集合
特点:1、数据类型要相同
2、内存空间连续,遍历时效率高
3、长度固定
3、声明数组的方式
构造方式
字面量方式:直接在{}中赋值
4、数组的相关概念
索引/下标: 范围 0~数组长度-1
数组长度:数组中元素的个数 数组名.length;
数组元素:数组里存放的值,不同类型数组有不同的默认值
5、数组元素的访问:
数组名是数组内存的首地址
数组名[索引]
6、数组的遍历
7、数组的扩容 3种数组复制的方式
8、方法的参数是基本类型,是引用类型的区别?
作业:
1、梳理清楚技能点
2、课堂案例
3、文档的题
面试题:
1、why:为什么? 好处
2、when:什么时候用?
3、what:是什么?概念
4、how:怎么用?