java ArrayList练习题

package java06;
/*
*随机产生6的1——33的数字,并存储到列表中,再进行遍历
* */

import java.util.ArrayList;
import java.util.Random;

public class Demolianxi {
    public static void main(String[] args) {
        Random r = new Random();
        ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < 6; i++) {
            int num = r.nextInt(33)+1;
            list.add(num);
        }
        System.out.println(list);
        System.out.println("========");
        for (int i = 0; i < list.size(); i++) {
            System.out.print(list.get(i)+ " ");

        }
    }
}
package java06;

import java.util.ArrayList;

/*
题目:自定义一个类,添加到集合,并遍历

思路:
1、自定义一个学生类,四个部分
2、创建一个集合,用力存储学生对象,泛型<Student>
3、根据类,创建4个学生对象
4、将4个学生对象添加到集合中 add
5、遍历集合  :  for  size  get
* */
public class DemoArrayListStudent {
    public static void main(String[] args) {
        ArrayList<Student> list = new ArrayList<>();
        Student one = new Student("冬瓜",21);
        Student two = new Student("西瓜",22);
        Student three = new Student("南瓜",23);
        Student four = new Student("杯瓜",24);

        list.add(one);
        list.add(three);
        list.add(two);
        list.add(four);
        System.out.println(list);//[java06.Student@282ba1e, java06.Student@13b6d03, java06.Student@f5f2bb7, java06.Student@73035e27]
        System.out.println("====================");

        for (int i = 0; i < list.size(); i++) {
            Student stu = list.get(i);
            System.out.println("姓名:" + stu.getName() +",年龄" + stu.getAge());
            /*
            * 姓名:冬瓜,年龄21
        姓名:南瓜,年龄23
        姓名:西瓜,年龄22
        姓名:杯瓜,年龄24*/

        }
    }
}

//创建学生类
package java06;

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;
    }
}
package java06;
/*
题目:
定义一个指定格式打印集合的方法(ArrayList 类型作为参数),使用{}扩起集合,使用@分割每个元素

System.out.pritln(list)   [10,20,30]
printArrayList(list)      {10@20@30}
* */

import java.util.ArrayList;

public class DemoArrayListPrint {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        list.add(10);
        list.add(20);
        list.add(30);
        System.out.println(list);
        printArrayList(list);
    }

    /*
    方法三要素:
    1、返回值类型:本例知识进行打印,没有运算,没有结果,所以用void
    2、方法名称:  printArratList
    3、参数列表     list
    * */
        public static void printArrayList (ArrayList list){
            System.out.print("{");
            for (int i = 0; i < list.size(); i++) {
                System.out.print(list.get(i));
                if (i == list.size() - 1) {
                    System.out.println("}");
                } else {
                    System.out.print("@");
                }

            }
        }

    }
package java06;
/*
题目:
用一个大集合存入20个随机数字,然年后筛选其中的偶数元素,放到小集合当中
要求:用自定义的方法实现

* */

import java.util.ArrayList;
import java.util.Random;

public class DemoArrayListReturn {
    public static void main(String[] args) {
        Random r = new Random();
        ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < 20; i++) {
            int num = r.nextInt(100)+1;
            list.add(num);
        }
        ArrayList<Integer> smallList = douNumList(list);
        System.out.println(smallList);
        for (int i = 0; i <smallList.size(); i++) {
            System.out.println(smallList.get(i));

        }
        
    }
    public static ArrayList<Integer> douNumList(ArrayList<Integer> list){
        ArrayList<Integer> list2 = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
            int num = list.get(i);
            if (num%2==0){
                list2.add(num);
            }

        }
        return list2;
    }
}

猜你喜欢

转载自www.cnblogs.com/spp666/p/11707250.html