java小作业(十一)

1.List排序联系

package com.sj.homework;

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

/**
 * @desc	对list集合中数据进行排序
 * @author  ws
 * @time	9.6
 */
public class Test {
	public static void main(String[] args) {

		List list = new ArrayList();//初始化list
		//存入数据
		list.add(44);
		list.add(22);
		list.add(33);
		//存入数组
		Object[] arr=list.toArray();
		//对数组进行从小到大的排序
		Arrays.sort(arr);
		//输出数组
		for (int i = 0; i < arr.length; i++) {
			System.out.println(arr[i]);
		}
	}

}

2.请自己设计一个班级学生通讯录,请编程实现

package com.sj.homework;

public class Users {

	public String name;//姓名
	public String age;//年龄
	public String sex;//性别
	public String tel;//手机号
	public Users(String name, String age, String sex, String tel) {
		this.name = name;
		this.age = age;
		this.sex = sex;
		this.tel = tel;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	public String getTel() {
		return tel;
	}
	public void setTel(String tel) {
		this.tel = tel;
	}
	
	
	
	
	
}
package com.sj.homework;

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



public class Test3 {
	public static void main(String[] args) {

		List<Users> list = new ArrayList<Users>();//list初始化
		//添加对象
		list.add(0,new Users("姓名", "年龄", "性别", "手机号"));
		list.add(1,new Users("张三", "18", "男", "13363036570"));
		list.add(2,new Users("李四", "19", "男", "13316513260"));
		list.add(3,new Users("王五", "20", "男", "13231315680"));
		//查询
		System.out.println("输入1根据名字查找联系人");
		System.out.println("输入2修改联系人");
		System.out.println("输入3添加联系人");
		System.out.println("输入4删除联系人");
		Scanner cin = new Scanner(System.in);//输入
		int num = cin.nextInt();
		if (num==1) {
			System.out.println("请输入姓名:");
			String name = cin.next();
			for (int i = 0; i < list.size(); i++) {
				if (list.get(i).getName().equals(name)) {//equals判断字符串内容是否相同,==用来比较两个对象是否引用了同一个实例
					Users user = list.get(i);//输出姓名为name的所有信息
					System.out.println(list.get(0).getName()+"\t"+list.get(0).getAge()+"\t"+list.get(0).getSex()+"\t"+list.get(0).getTel());
					System.out.println(user.getName()+"\t"+user.getAge()+"\t"+user.getSex()+"\t"+user.getTel());
				} else{
					System.out.println("对不起!没有该联系人!");
				}
			}
		}
		if (num==2) {
			System.out.print("请输入要修改的姓名:");
			String name = cin.next();
			for (int i = 0; i < list.size(); i++) {
				if (list.get(i).getName().equals(name)) {//equals判断字符串内容是否相同,==用来比较两个对象是否引用了同一个实例
					System.out.print("姓名:");
					String name1 = cin.nextLine();
					System.out.print("年龄:");
					String age1 = cin.nextLine();
					System.out.print("性别:");
					String sex1 = cin.nextLine();
					System.out.print("电话:");
					String tel1 = cin.nextLine();
					list.get(i).setName(name1);
					list.get(i).setAge(age1);
					list.get(i).setSex(sex1);
					list.get(i).setTel(tel1);
					System.out.println("修改成功!");
				}
			}
		}
		if (num==3) {
			System.out.print("姓名:");
			String name1 = cin.nextLine();
			System.out.print("年龄:");
			String age1 = cin.nextLine();
			System.out.print("性别:");
			String sex1 = cin.nextLine();
			System.out.print("电话:");
			String tel1 = cin.nextLine();
			Users newUsers = new Users(name1, age1, sex1, tel1);
			list.add(newUsers);
			System.out.println("添加成功!");
		}
		if (num==4) {
			System.out.println("是否继续?一旦删除无法找回,输入y/n");
			String yn = cin.next();
			if (yn.equals("y")) {
				list.clear();
				System.out.println("删除成功!");
			} else if (yn.equals("n")){
				System.out.println("删除失败!");
			}
		}
		
		
		

	}
}


3.编写程序,随机生成5个1-10之间的随机数,存入一个List集合中,编写方法对List集合进行排序

package com.sj.homework;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

//2.编写程序,随机生成5个1-10之间的随机数,存入一个List集合中,编写方法对List集合进行排序
public class SuiJiShu {
	
	public static void main(String[] args) {
		run();
	}
	public static void run() {
		List list = new ArrayList();
		int [] arr = new int[5];//判断重复用的数组
		for (int i = 0; i < 5; i++) {//5次循环
			int num = (int)(Math.random()*10);//生成0~10整形随机数
			arr[i]=num;//存入数组
			if (i>0) {//当i>0时进行判断,以下进行不重复随机数的生成
				for (int j = i-1; j >= 0; j--) {//j是i以前的索引
					if (num==arr[j]) {//如果出现重复
//						System.out.println("出现了重复的随机数:"+num);//方便查看
						num = (int)(Math.random()*10);//再次生成整形随机数
						j = i-1;//j索引初始化,再次循环
					}
				}
			}
//			System.out.print(num+"\t");//输出随机数的值
			list.add(num);//存入list
		}
			paiXu(list);//排序和输出
	}
	public static void paiXu(List list) {//排序和输出
		Collections.sort(list);//对list从小到大排序
		for (int i = 0; i < list.size(); i++) {
			System.out.print(list.get(i)+"\t");//输出每一项
		}
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值