【Java作业】Week06

作业一

package org.westos_13;

import java.util.ArrayList;
import java.util.Iterator;

/**
 * 1:集合的嵌套遍历
  需求:
  		我们班有学生,每一个学生是不是一个对象。所以我们可以使用一个集合表示我们班级的学生。ArrayList<Student>
  		但是呢,我们旁边是不是还有班级,每个班级是不是也是一个ArrayList<Student>。
 		而我现在有多个ArrayList<Student>。也要用集合存储,怎么办呢?
 * @author asus-pc
 *
 */
public class TestDemo {
	public static void main(String[] args) {
		ArrayList<ArrayList<Student>> grade = new ArrayList<ArrayList<Student>>();
		//定义集合表示班级,装载学生
		ArrayList<Student> class1 = new ArrayList<Student>();
		ArrayList<Student> class2 = new ArrayList<Student>();
		ArrayList<Student> class3 = new ArrayList<Student>();
		ArrayList<Student> class4 = new ArrayList<Student>();
		//
		grade.add(class1);
		grade.add(class2);
		grade.add(class3);
		grade.add(class4);
		//定义学生变量
		Student stu1 = new Student(18,"一班学生");
		Student stu2 = new Student(222,"一班学生");
		Student stu3 = new Student(555,"二班学生");
		Student stu4 = new Student(200,"三班学生");
		Student stu5 = new Student(123,"四班学生");
		//向班级中添加学生
		class1.add(stu1);
		class1.add(stu2);
		class2.add(stu3);
		class3.add(stu4);
		class4.add(stu5);
		//遍历并输出学生信息————————使用size()和get()
//		for(int i = 0;i < a.size();i ++) {
//			for(int j = 0;j < a.get(i).size();j++) {
//				ArrayList<Student> temp = a.get(i);
//				System.out.println(temp.get(j));
//			}
//		}
		//使用迭代器
		Iterator<ArrayList<Student>> it1 = grade.iterator();
		while(it1.hasNext()) {
			Iterator<Student> it2 = it1.next().iterator();
			while(it2.hasNext()) {
				System.out.println(it2.next());
			}
			
		}
	}
}

class Student {
	int age;
	String name;
	
	public Student(int age, String name) {

		this.age = age;
		this.name = name;
	}

	public Student() {

	}

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


作业二

package org.westos_13;
/**
 * 获取10个1-20之间的随机数,要求不能重复
 * @author asus-pc
 *
 */
public class TestDemo1 {
	public static void main(String[] args) {
		int ran[] = new int[20];
		for(int i = 0;i < 20;i ++) {
			ran[i]= (int)Math.random() * 20 + 1;
			for(int j = 1;j < i;j++) {
				if(ran[i] == ran[j]) {
					i--;
				}
			}
		}
	}
}


作业三
package org.westos_13;

import java.util.ArrayList;
import java.util.Iterator;

/**
 * 使用ArrayList集合存储自定义对象并遍历(三种方式去实现)
 * @author asus-pc
 *
 */
public class TestDemo2 {
	public static void main(String[] args) {
		ArrayList class1 = new ArrayList();
		//创建自定义对象
		Student stu1 = new Student(18,"一班学生");
		Student stu2 = new Student(222,"一班学生");
		Student stu3 = new Student(555,"二班学生");
		Student stu4 = new Student(200,"三班学生");
		Student stu5 = new Student(123,"四班学生");
		//往集合中添加自定义对象
		class1.add(stu1);
		class1.add(stu2);
		class1.add(stu3);
		class1.add(stu4);
		class1.add(stu5);
		//遍历并输出
		//方法一       调用toArray方法
		Object stu[] = class1.toArray();
		for(int i = 0;i < stu.length;i ++) {
			Student temp = (Student)stu[i];
			System.out.println(temp);
		}
		//方法二 _______使用size和get
		System.out.println("--------------------");
		for(int i =0;i < class1.size();i ++) {
			System.out.println(class1.get(i));
		}
		//方法三————————使用迭代器
		System.out.println("------------");
		Iterator it = class1.iterator();
		while(it.hasNext()) {
			System.out.println(it.next());
		}
		
	}
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值