P155-集合框架-List接口常用方法的测试

package cd_one.code15.exer2;

import org.junit.Test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

public class ListTest {
    @Test
    public void test(){
           List list = new ArrayList();
           //接口本来就是不能造对象,所以只能通过实现类ArrayList()间接或者直接调用到object

           list.add("AA");
           list.add(123);
           list.add("BB");
           list.add(new Person("Tom",12));
            System.out.println(list.toString());
            //[AA, 123, BB, Person{name='Tom', age=12}]
            list.add(2,"CC");
        System.out.println(list);

        List list1 = Arrays.asList(1, 2, 3);
        list.add(1,list1);
        System.out.println(list);
        list.addAll(1,list1);
        System.out.println(list);

        //[AA, 123, BB, Person{name='Tom', age=12}]
        //[AA, 123, CC, BB, Person{name='Tom', age=12}]
        //[AA, [1, 2, 3], 123, CC, BB, Person{name='Tom', age=12}]
        //[AA, 1, 2, 3, [1, 2, 3], 123, CC, BB, Person{name='Tom', age=12}]
    }
    @Test
    public void test2(){
        List list = new ArrayList();
        //接口本来就是不能造对象,所以只能通过实现类ArrayList()间接或者直接调用到object

        list.add("AA");
        list.add("BB");
        list.add(123);
        list.add(2);
        list.add(new Person("Tom",12));
    //删除索引2的元素
//        list.remove(2);
//        System.out.println(list);
//        System.out.println(list.get(2));

        //删除数据2
        list.remove(Integer.valueOf(2));//把基本数据类型变成了一个2的对象
        System.out.println(list);
        //[AA, BB, 123, Person{name='Tom', age=12}]

        //遍历方式1:使用迭代器
//        Iterator iterator = list.iterator();
//        while (iterator.hasNext()){
//            System.out.println(iterator.next());
//        }
        //遍历方法2:增强for循环
//        for (Object obj: list){
//            System.out.println(obj);
//            //AA
//            //BB
//            //123
//            //Person{name='Tom', age=12}
//        }
//        方法3:
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }
}


156-集合框架-List不同实现类的对比及课后练习
 

package cd_one.code15.exer3;

import java.util.ArrayList;
import java.util.Scanner;

public class StudentTest {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        ArrayList list = new ArrayList();
        System.out.println("请录入学生信息:");
        while(true){
            System.out.println("1:继续录入,0:结束录入");
            int selection = sc.nextInt();
            if(selection == 0){
                break;
            }
            System.out.print("请输入学生的姓名:");
            String name = sc.next();
            System.out.print("请输入学生的年龄:");
            int age = sc.nextInt();
            
            Student s  = new Student(name,age);
            list.add(s);
        }
        //遍历集合当中的学生信息
        System.out.println("遍历学生信息:");
        for(Object s : list){
            System.out.println(s.toString());
        }
    }
}

 

 

package cd_one.code15.exer3;

import java.util.Objects;

public class Student {
    private String name;
    private int age;

    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof Student)) return false;
        Student student = (Student) o;
        return age == student.age && Objects.equals(name, student.name);
    }

    @Override
    public int hashCode() {
        return Objects.hash(name, age);
    }
}

package cd_one.code15.exer4;


import java.util.ArrayList;

public class ListTest {
    public static void main(String[] args) {
        //1.,存放于集合中
        ArrayList list = new ArrayList();
        for (int i = 0; i < 30; i++) {
                list.add((char)(Math.random() * (122 - 97 + 1) + 97)+"") ;

        }
        System.out.println(list);
        int aCount1 = listTest(list,"a");
        int aCount2 = listTest(list,"b");
        int aCount3 = listTest(list,"c");
        int aCount4 = listTest(list,"x");

        System.out.println("a:" + aCount1);
        System.out.println("b:" + aCount2);
        System.out.println("c:" + aCount3);
        System.out.println("x:" + aCount4);

    }
    //2.遍历,查找元素次数
    public static int listTest(ArrayList list, String s) {
        int count = 0;
        for (Object i : list) {
            if (s.equals(i)) {
                count++;
            }
        }
        return count;
    }
}

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃炫迈的绮绮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值