【JAVA学习“集合”】笔记

落日映苍穹つ 2024-03-17 19:35 103阅读 0赞

学习集合的基本知识和 ArrayList,以及一些练习题

集合

在这里插入图片描述

ArrayList

在这里插入图片描述
操作演示

  1. //1.创建一个集合
  2. //<String>表示只能接受字符串类型的数据,为泛型
  3. ArrayList<String> list = new ArrayList<>();
  4. //2.添加元素
  5. list.add("aaa");
  6. list.add("aaa");
  7. list.add("bbb");
  8. list.add("ccc");
  9. /*//3.删除元素
  10. boolean result = list.remove("aaa");
  11. System.out.println(result);//打印结果为true
  12. System.out.println(list);//[aaa, bbb, ccc]
  13. String str = list.remove(0);
  14. System.out.println(str);
  15. System.out.println(list);//删除0位置的元素
  16. // 返回被删除元素aaa和被删除元素后的集合*/
  17. //4.修改
  18. //把集合1位置的元素改为ddd
  19. String result = list.set(1, "ddd");//被替换的aaa
  20. System.out.println(result);//打印被替换的aaa
  21. System.out.println(list);//[aaa, ddd, bbb, ccc]
  22. //查询元素
  23. String s = list.get(1);
  24. System.out.println(s);
  25. //遍历用获取集合长度
  26. for (int i = 0; i < list.size(); i++) {
  27. //i索引
  28. //list.get() 元素
  29. String s1 = list.get(i);
  30. System.out.println(s1);
  31. }

练习

定义一个集合,添加元素,并进行遍历

  1. //1.创建集合
  2. ArrayList<String> list = new ArrayList<>();
  3. //2.添加元素
  4. list.add("吃好了吗?");
  5. list.add("睡好了吗?");
  6. list.add("休息好了吗?");
  7. list.add("拜拜了您内!");
  8. //3.遍历
  9. System.out.print("[");
  10. for (int i = 0; i < list.size(); i++) {
  11. if (i == list.size() - 1){
  12. System.out.print(list.get(i));
  13. }else {
  14. System.out.print(list.get(i) + ",");
  15. }
  16. }
  17. System.out.print("]");

练习
在这里插入图片描述

为了把数字放入的集合中,需要对基本的数据类型进行包装

基本数据类型对应的包装类
在这里插入图片描述

  1. //1.创建集合
  2. ArrayList<Integer> list = new ArrayList<>();
  3. //重点在括号中的Integer
  4. //需要添加字符时,把Integer换成Character即可
  5. //2.添加元素
  6. list.add(1);
  7. list.add(2);
  8. list.add(3);
  9. list.add(4);
  10. list.add(5);
  11. //3.遍历集合
  12. System.out.print("[");
  13. for (int i = 0; i < list.size(); i++) {
  14. if (i == list.size()-1){
  15. System.out.print(list.get(i));
  16. }else{
  17. System.out.print(list.get(i) + ",");
  18. }
  19. }
  20. System.out.println("]");

结果
在这里插入图片描述
练习
在这里插入图片描述
因为学生的类并不存在,所以要提前定义一个学生的类,写一个标准javabin
定义学生类

  1. public class Student {
  2. //1.私有化成员变量
  3. //2.空参构造方法
  4. //3.带全部参数的构造方法
  5. //4.get和set方法
  6. private String name;
  7. private int age;
  8. public Student() {
  9. }
  10. public Student(String name, int age) {
  11. this.name = name;
  12. this.age = age;
  13. }
  14. public String getName() {
  15. return name;
  16. }
  17. public void setName(String name) {
  18. this.name = name;
  19. }
  20. public int getAge() {
  21. return age;
  22. }
  23. public void setAge(int age) {
  24. this.age = age;
  25. }
  26. }

完成剩下的任务

  1. public class test3 {
  2. public static void main(String[] args) {
  3. //1.创造集合
  4. ArrayList<Student> list = new ArrayList<>();
  5. //2.创建学生对象
  6. Student s1 = new Student("卫青", 35);
  7. Student s2 = new Student("张骞", 32);
  8. Student s3 = new Student("霍去病", 20);
  9. //3.添加元素
  10. list.add(s1);
  11. list.add(s2);
  12. list.add(s3);
  13. //4.遍历集合
  14. for (int i = 0; i < list.size(); i++) {
  15. Student stu = list.get(i);
  16. //这里不能直接打印stu,直接打印出现的是地址值,因为是自己写的类,并且没经过处理。需要打印属性
  17. System.out.println(stu.getName() + "," +stu.getAge() );
  18. }
  19. }
  20. }

在这里插入图片描述
代码

  1. public class test4 {
  2. public static void main(String[] args) {
  3. //1.创建集合
  4. ArrayList<Student> list = new ArrayList<>();
  5. //2.键盘录入学生信息并添加到集合当中
  6. Scanner sc = new Scanner(System.in);
  7. //因为集合的长度是不定的,所以这里不能写list.size(),要创建几个对象就写几
  8. for (int i = 0; i <3; i++) {
  9. Student s = new Student();//此代码不能写到循环外面
  10. System.out.println("请输入学生姓名");
  11. String name = sc.next();
  12. System.out.println("请输入学生年龄");
  13. int age = sc.nextInt();
  14. //把name和age赋值给学生对象
  15. s.setName(name);
  16. s.setAge(age);
  17. //把学生对象添加到集合中
  18. list.add(s);
  19. }
  20. //3.遍历
  21. for (int i = 0; i < list.size(); i++) {
  22. Student stu = list.get(i);
  23. System.out.println(stu.getName() +","+stu.getAge());
  24. }
  25. }
  26. }

运行结果
在这里插入图片描述

解释Student s = new Student();//此代码为什么不能写到循环外面
在这里插入图片描述
在这里插入图片描述
建立用户的类

  1. public class User {
  2. private String id;
  3. private String username;
  4. private String password;
  5. public User() {
  6. }
  7. public User(String id, String username, String password) {
  8. this.id = id;
  9. this.username = username;
  10. this.password = password;
  11. }
  12. public String getId() {
  13. return id;
  14. }
  15. public void setId(String id) {
  16. this.id = id;
  17. }
  18. public String getUsername() {
  19. return username;
  20. }
  21. public void setUsername(String username) {
  22. this.username = username;
  23. }
  24. public String getPassword() {
  25. return password;
  26. }
  27. public void setPassword(String password) {
  28. this.password = password;
  29. }
  30. }

完成查询

  1. public class test5 {
  2. public static void main(String[] args) {
  3. //1.创建集合
  4. ArrayList<User> list = new ArrayList<>();
  5. //2.创建三个用户对象
  6. User u1 = new User("001", "秦皇", "剪灭六国");
  7. User u2 = new User("002", "汉武", "击穿匈奴");
  8. User u3 = new User("003", "唐宗", "天可汗");
  9. //3.把用户对象添加到集合中
  10. list.add(u1);
  11. list.add(u2);
  12. list.add(u3);
  13. //4.调用方法查看id是否存在
  14. boolean b = contains(list, "005");//在此处输入想要查询的id
  15. //5.打印结果
  16. System.out.println(b);
  17. }
  18. public static boolean contains(ArrayList<User> list,String id){
  19. for (int i = 0; i < list.size(); i++) {
  20. User u = list.get(i);
  21. String uid = u.getId();
  22. if (uid.equals(id)){
  23. return true;
  24. }
  25. }
  26. return false;
  27. }
  28. }

运行结果
在这里插入图片描述

TIPS
选中小括号键入CTRL+p会出现需要输入数据属性的顺序

发表评论

表情:
评论列表 (有 0 条评论,103人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java学习笔记一Map集合

    Map的key不允许重复,即同一个Map对象的任何两个key通过equals方法比较总是返回false。key和value之间存在单向一对一关系,即通过指定的key,总能找到唯

    相关 学习笔记Java集合——Collection

    集合:一种用来储存数据的容器。 数组也是一种存储数据的容器,既然已经有了数据,为什么还要有集合?实际中,我们很多时候并不知道数据规模(数据的量),而数组的长度在初始化时就要给

    相关 学习笔记Java集合——Map

    我们常会看到这样的一种集合:身份证号与个人,学号与学生个体,系统用户名与系统用户对象等,这种一一对应的关系,就叫做映射。Java提供了专门的集合类用来存放这种对象关系的对象,即