本帖最后由 小石姐姐 于 2018-8-31 16:54 编辑
Java学习第7天,今天学习了Scanner类、Random类、ArrayList类,难度开始加大,下附课堂笔记总结:
day07【Scanner类、Random类、ArrayList类】
1、能够使用Scanner类获得键盘录入数据
引用类型的一般操作步骤:
导包
import 包路径.类名称;
如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句不写
只有java.lang包下的内容不需要导包,其他的包都需要import语句
创建
类名称 对象名 = new 类名称();
使用
对象名.成员方法();
创建键盘录入对象:
[Java] 纯文本查看 复制代码 Scanner sc = new Scanner(System.in); System.in表示从键盘录入数据
2、能够使用Random类生成随机数
键盘录入一个数字,与生成的0--100之间随机数比较
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//创建随机数对象
Random rd = new Random();
//获取随机数0--100之内的,因为Random类生成的随机数是[0,N),左闭右开区间,所以需要+1
int i = rd.nextInt(100) + 1;
//创建键盘录入对象
Scanner sc = new Scanner(System.in);
while (true){
//键盘录入数据
int a = sc.nextInt();
if(a > i){
System.out.println("猜大了");
}else if (a < i){
System.out.println("猜小了");
}else {
System.out.println("猜对了");
break;
}
}
}
3、能够使用数组存储自定义类型并遍历
对象数组:元素是引用数据类型的数组
对象数组中存储的是引用数据类型对象,是对象的地址值
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//创建学生数组
Student[] students = new Student[3];
//创建学生对象
Student s1 = new Student("曹操",40);
Student s2 = new Student("刘备",35);
Student s3 = new Student("孙权",30);
//把学生对象作为元素赋值给学生数组
students[0] = s1;
students[1] = s2;
students[2] = s3;
//遍历学生数组
for(int x=0; x<students.length; x++) {
Student s = students[x];
System.out.println(s.getName()+"‐‐‐"+s.getAge());
}
}
4、理解什么是集合
集合:是一个统称,与数组类型也是容器,包含List、Set、Map三大类型
集合和数组的区别:
数组一旦创建,长度不可改变
集合长度可以动态改变
对于ArrayList来说,有一个尖括号<E>代表泛型
泛型:也就是装在集合当中的所有元素,全都是统一的类型
注意:泛型只能是引用类型,不能是基本类型
对于ArrayList来说,直接打印得到的不是地址值,而是内容
如果内容是空,得到的是空的中括号:[]
5、能够使用ArrayList集合存储数据
如果希望向集合ArrayList当中存储基本数据类型,必须使用基本类型对应的“包装类”
因为ArrayList泛型中存放的必须是引用数据类型,而包装类是引用数据类型,存储方式是地址值
int的包装类是Integer,char的包装类是Character,其他的基本数据类型都是首字母大写
包装类:是统称,是基本类型对应的引用数据类型
自动装箱:基本类型---包装类型
自动拆箱:包装类型---基本类型
6、能够使用ArrayList集合中常用的方法
ArrayList当中的常用放法:
public boolean add(E e):向集合当中添加元素,参数类的类型和泛型一致
对于add添加方法来说,添加元素一定会成功
public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。
public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。
public int size() :返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。
7、能够使用ArrayList集合存储字符串并遍历
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//创建String集合
ArrayList<String> list = new ArrayList<>();
//添加元素
list.add("JAVA");
list.add("PHP");
list.add("C++");
//遍历集合
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
8、能够使用ArrayList集合存储自定义对象并遍历
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//创建学生对象
Student student1 = new Student("赵丽颖",28);
Student student2 = new Student("刘亦菲",29);
Student student3 = new Student("秦岚",32);
//创建学生信息集合
ArrayList<Student> list = new ArrayList<>();
list.add(student1);
list.add(student2);
list.add(student3);
//循环遍历学生集合
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i).getName()+","+list.get(i).getAge());
}
}
9、能够使用ArrayList类作为形式参数和返回值类型
[Java] 纯文本查看 复制代码 public static void main(String[] args) {
//创建存储随机数的集合
ArrayList<Integer> list = new ArrayList<>();
//创建随机数对象
Random rd = new Random();
//获取1--100之间的20个随机数
for (int i = 0; i < 20; i++) {
int random = rd.nextInt(100) + 1;
list.add(random);
}
//20个随机数
System.out.println("20个随机数:"+list);
//调用arrayList方法
arrayList(list);
}
//接收作为参数传递过来的1--100之间随机数集合,创建判断集合中哪些是偶数的方法
[Java] 纯文本查看 复制代码 public static ArrayList<Integer> arrayList(ArrayList<Integer> list){
//创建集合用来存储符合要求的偶数
ArrayList<Integer> list1 = new ArrayList<>();
//遍历1--100之间随机数集合,判断其中是偶数的添加到偶数集合list1中
for (int i = 0; i < list.size(); i++) {
//判断list集合中的数哪些是偶数
if (list.get(i) % 2 == 0){
list1.add(list.get(i));
}
}
System.out.println("是偶数的有"+list1.size()+"个:"+list1);
return list1;
}
匿名对象
匿名对象只能使用唯一的一次,下次再用不得不再创建一个新的对象
如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象
new.类名称().成员变量、成员方法;
|
|