day4:
1.选择结构switch语句:用于几个固定的值判断
a)格式:
switch (表达式){
case 目标值 1:
执行语句 1
break;
case 目标值 2:
执行语句 2
break;
......
case 目标值 n:
执行语句 n
break;
default:
执行语句 n+1
break;
}
b)执行流程:
首选会用表达式的值与所有的case目标值进行匹配
true:就执行case对应目标值中的执行语句
false:就执行default中的执行语句
break的作用:结束switch语句
2.数组:
a)定义格式
数据类型[] 数组名 = new 数据类型[数组长度];
int[] arr = new int[10];
数据类型[] 数组名 = new 数据类型[]{元素值1,元素值2,...};
int[] arr = new int[]{1,2,3};
数据类型[] 数组名 = {元素值1,元素值2,...};
int[] arr = {1,2,3};
b)使用格式:数组名[索引],索引是从0开始到length-1
获取值:数组中元素的数据类型 变量名 = 数组名[索引];
赋值:数组名[索引] = 数据值;
c)获取数组的长度:数组名.length
d)数组最常见的操作:遍历,依次打印数组中的每一个元素
for(int i=0; i<数组名.length; i++){
System.out.println(数组名[i]);
}
e)数组运行期错误:
1.数组索引越界异常:
访问了不存在的索引,就会报索引越界异常ArrayIndexOutOfBoundsException
2.空指针异常:
在使用变量引用一个数组时,变量必须指向一个有效的数组对象,如果该变量的值为null,则意味着没有指向任何数组,此时通过该变量访问数组的元素会出现空指针异常NullPointerException
day5:
1.方法定义的格式:
修饰符 返回值的数据类型 方法名(参数类型 参数名 1,参数类型 参数名 2,......){
执行语句
………
return 返回值;
}
a)修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等,这些修饰符在后面的学习过程中会逐步介绍
b)返回值类型:用于限定方法返回值的数据类型
c)参数类型:用于限定调用方法时传入参数的数据类型
d)参数名:是一个变量,用于接收调用方法时传入的数据
e)return关键字:用于结束方法以及返回方法指定类型的值
f)返回值:被return语句返回的值,该值会返回给调用者
2.方法使用的格式:
a)有返回值:
用变量接收:方法返回值的数据类型 变量名 = 方法名(参数);
用输出语句打印:System.out.println(方法名(参数));
b)无返回值:
直接调用:方法名(参数);
3.方法的重载
a)概念: Java允许在一个类中定义多个名称相同的方法,但是参数的类型或个数或顺序必须不同,这就是方法的重载。
b)重载的注意事项
i.重载方法参数必须不同:
参数个数不同,如method(int x)与method(int x,int y)不同
参数类型不同,如method(int x)与method(double x)不同g
参数顺序不同,如method(int x,double y)与method(double x,int y)不同
ii.重载只与方法名与参数类型相关与返回值无关
如void method(int x)与int method(int y)不是方法重载,不能同时存在
iii.重载与具体的变量标识符无关
如method(int x)与method(int y)不是方法重载,不能同时存在
4.参数传递
a)概念: 参数传递,可以理解当我们要调用一个方法时,我们会把指定的数值,传递给方法中的参数,这样方法中的参数就拥有了这个指定的值,可以使用该值,在方法中运算了。这种传递方式,我们称为参数传递。
b)在这里,定义方法时,参数列表中的变量,我们称为形式参数。
c)调用方法时,传入给方法的数值,我们称为实际参数。
d)结论:
当调用方法时,如果传入的数值为基本数据类型(包含String类型),形式参数的改变对实际参数不影响。
当调用方法时,如果传入的数值为引用数据类型(String类型除外),形式参数的改变对实际参数有影响。
day6:
1.类的类型为两种:
a)第一种,Java为我们提供好的类,如Scanner类,Math类等,这些已存在的类中包含了很多的方法与属性,可供我们使用。
b)第二种,我们自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供我们使用。
2.自定义数据类型概述
我们在Java中,将现实生活中的事物抽象成了代码。这时,我们可以使用自定义的数据类型(类)来描述(映射)现实生活中的事物。
3.类的定义格式
创建java文件,与类名相同
public class 类名{
数据类型 属性名称1;
数据类型 属性名称2;
…
}
4.类的使用格式
a)导包:我们将所有的类放到同一个文件夹下,可以避免导包。
b)创建对象:数据类型 变量名 = new 数据类型();
c)调用方法:目前我们定义的自定义类不涉及方法,只有属性(自定义类中的方法部分在面向对象部分讲解)
访问属性:变量名.属性 (这是当前的方式,后期会采取调用方法的方式替代掉直接访问的方式来完成对属性的访问。)
获取属性:
属性数据类型 变量名 = 变量名.属性;
给属性赋值:
变量名.属性 = 数据值;
注意:
自定义类的属性也有初始化值,和数组的初始化值一样
直接打印自定义类型的变量名,是打印它堆内存中的地址
5.ArrayList集合定义:
它是引用数据类型的一种,底层是一个长度可变的数组
6.ArrayList集合使用格式:
a)导包:import java.util.ArrayList;
b)创建ArrayList对象,为ArrayList变量赋值;
ArrayList<要存储的数据的类型> 变量名 = new ArrayList<要存储的数据的类型>();
c)通过变量名.方法名(),可以调用集合中的方法
7.ArrayList集合中的常用方法:
a)boolean add(Xxx obj) 将指定元素 obj 追加到集合的末尾
b)Xxx get(int index) 返回集合中指定位置上的元素
c)int size() 返回集合中的元素个数
d)void add(int index, Xxx obj) 将指定元素 obj 插入到集合中指定的位置
e)Xxx remove(int index) 从集合中删除指定 index 处的元素,返回该元素
f)void clear() 清空集合中所有元素
g)Xxx set(int index, Xxx obj) 用指定元素 obj 替代集合中指定位置上的元素
Xxx-->集合中要存储的数据的类型
8.集合的遍历:通过集合遍历,得到集合中每个元素,这是集合中最常见的操作。
ArrayList<String> list = new ArrayList<String>();
list.add("貂蝉");
list.add("杨贵妃");
list.add("王昭君");
list.add("西施");
//遍历集合
//i:集合的索引 list.size():集合长度 list.get(i):获取集合中的元素
for(int i=0; i<list.size(); i++){
System.out.println(list.get(i));
} |
|