• 集合java


    1.集合

    ArrayList

    集合和数组的优势对比:

    长度可变

    添加数据的时候不需要考虑索引,默认将数据添加到末尾

    1. package com.itheima;
    2. import java.util.ArrayList;
    3. /*public boolean add(要添加的元素) | 将指定的元素追加到此集合的末尾 |
    4. | public boolean remove(要删除的元素) | 删除指定元素,返回值表示是否删除成功
    5. | public E remove(int index) | 删除指定索引处的元素,返回被删除的元素
    6. | public E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素
    7. | public E get(int index) | 返回指定索引处的元素
    8. | public int size() | 返回集合中的元素的个数
    9. */
    10. public class ArrayListDemo2 {
    11. public static void main(String[] args) {
    12. //1.创建一个集合对象
    13. ArrayList list = new ArrayList();
    14. //2.添加元素
    15. list.add("aaa");
    16. list.add("bbb");
    17. list.add("ccc");
    18. list.add("ddd");
    19. //3.删除元素
    20. boolean result = list.remove("aaa");
    21. System.out.println(list);
    22. //删除失败返回flast
    23. //根据索引删除元素,返回被删除的元素
    24. String str = list.remove(2);
    25. System.out.println(str);
    26. System.out.println(list);
    27. //4.修该元素
    28. String str2 = list.set(0, "aaa");
    29. System.out.println(str2);//返回被覆盖的元素
    30. System.out.println(list);
    31. //5.查寻元素
    32. String str3 = list.get(0);
    33. System.out.println(str3);//返回指定索引处的元素
    34. System.out.println(list);
    35. //6.遍历集合
    36. for (int i = 0; i < list.size(); i++) {
    37. //list.get(i)元素
    38. System.out.println(list.get(i));
    39. }
    40. }
    41. }

    1. package com.itheima;
    2. import java.util.ArrayList;
    3. import java.util.List;
    4. //定义一个方法,讲价格低于3000的手机信息打印出啦
    5. public class PhoneTest {
    6. public static void main(String[] args) {
    7. //1.创建集合
    8. ArrayList list = new ArrayList();
    9. //2.创建对象
    10. Phone p1 = new Phone("苹果",1000);
    11. Phone p2 = new Phone("小米",2200);
    12. Phone p3 = new Phone("锤子",3200);
    13. //3.添加数据
    14. list.add(p1);
    15. list.add(p2);
    16. list.add(p3);
    17. //4.调用方法
    18. ArrayList phoneInfolist = getPhoneInfo(list);
    19. //5.遍历集合
    20. for (int i = 0; i < phoneInfolist.size(); i++) {
    21. Phone p = phoneInfolist.get(i);
    22. System.out.println(p.getBrand()+" "+p.getPrice());
    23. }
    24. }
    25. //如果说我们要返回多个数据,可以把这些数据先放到一个容器当中,再把容器返回
    26. //集合,数组
    27. public static ArrayList getPhoneInfo( ArrayList list ) {
    28. ArrayList resultlist=new ArrayList<>();
    29. for (int i = 0; i < list.size(); i++) {
    30. Phone p = list.get(i);
    31. int price = p.getPrice();
    32. if(price<3000){
    33. resultlist.add(p);//手机对象p存再集合resultlist里
    34. }
    35. }
    36. return resultlist;
    37. }
    38. }

    1. package com.itheima;
    2. import java.util.ArrayList;
    3. public class ArrayListDemo7Case {
    4. public static void main(String[] args) {
    5. //1.创建集合
    6. ArrayList list = new ArrayList();
    7. //2.创建三个用户对象
    8. User u1=new User("001","zhngsan","123");
    9. User u2=new User("002","li","456");
    10. User u3=new User("003","zhngsan","789");
    11. //3.添加元素
    12. list.add(u1);
    13. list.add(u2);
    14. list.add(u3);
    15. //4.调用方法看id是否存在
    16. int flag = contains(list, "002");
    17. if(flag>=0){
    18. User u = list.get(flag);
    19. System.out.println(u.getId());
    20. }else{
    21. System.out.println("不存在");
    22. }
    23. }
    24. public static int contains(ArrayList list,String id){
    25. for (int i = 0; i < list.size(); i++) {
    26. if(list.get(i).getId().equals(id)){
    27. return i;
    28. }
    29. }
    30. return -1;
    31. }
    32. }

    1. package com.itheima;
    2. import java.util.ArrayList;
    3. import java.util.Scanner;
    4. public class ArrayListDemo6 {
    5. public static void main(String[] args) {
    6. //1.创建集合
    7. ArrayList list=new ArrayList<>();
    8. //长度为0
    9. //2.键盘录入学生的信息并添加到集合当中
    10. Scanner sc=new Scanner(System.in);
    11. for(int i=0;i<3;i++){
    12. Student s=new Student();
    13. System.out.println("请输入学生姓名");
    14. String name=sc.next();
    15. System.out.println("请输入学生的年龄");
    16. int age=sc.nextInt();
    17. //把name和age赋值给学生对象
    18. s.setName(name);
    19. s.setAge(age);
    20. //把学生对象添加在集合中
    21. list.add(s);
    22. }
    23. //遍历集合
    24. for (int i = 0; i < list.size(); i++) {
    25. Student stu=list.get(i);
    26. System.out.println(stu.getName()+" "+stu.getAge());
    27. }
    28. }
    29. }

     
    

    /如果说我们要返回多个数据,可以把这些数据先放到一个容器当中,再把容器返回

    //集合,数组

    1. package com.itheima;
    2. import java.util.ArrayList;
    3. import java.util.List;
    4. //定义一个方法,讲价格低于3000的手机信息打印出啦
    5. public class PhoneTest {
    6. public static void main(String[] args) {
    7. //1.创建集合
    8. ArrayList list = new ArrayList();
    9. //2.创建对象
    10. Phone p1 = new Phone("苹果",1000);
    11. Phone p2 = new Phone("小米",2200);
    12. Phone p3 = new Phone("锤子",3200);
    13. //3.添加数据
    14. list.add(p1);
    15. list.add(p2);
    16. list.add(p3);
    17. //4.调用方法
    18. ArrayList phoneInfolist = getPhoneInfo(list);
    19. //5.遍历集合
    20. for (int i = 0; i < phoneInfolist.size(); i++) {
    21. Phone p = phoneInfolist.get(i);
    22. System.out.println(p.getBrand()+" "+p.getPrice());
    23. }
    24. }
    25. //如果说我们要返回多个数据,可以把这些数据先放到一个容器当中,再把容器返回
    26. //集合,数组
    27. public static ArrayList getPhoneInfo( ArrayList list ) {
    28. ArrayList resultlist=new ArrayList<>();
    29. for (int i = 0; i < list.size(); i++) {
    30. Phone p = list.get(i);
    31. int price = p.getPrice();
    32. if(price<3000){//如果当前手机的价格低于3000,那么就把手机对象添加在resultlist当中
    33. resultlist.add(p);//手机对象p存再集合resultlist里
    34. }
    35. }
    36. return resultlist;
    37. }
    38. }

  • 相关阅读:
    SpringCloud源码分析 (Eureka-Client-服务下架与服务下线) (四)
    加州驾照笔试准备笔记
    监控指定任务,结束钉钉通知
    【力扣每日一题】2023.9.10 课程表Ⅱ
    多商户商城系统源码,同类产品选择多,买东西更划算
    一文读懂java变量类型
    python基于百度sdk语音转文字
    windows服务器热备、负载均衡配置
    实验项目5.4 高速缓存(Cache)设计
    vue模板语法上集
  • 原文地址:https://blog.csdn.net/weixin_65752158/article/details/139627725