A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© _J2EE_LiXiZhen 中级黑马   /  2017-11-12 23:05  /  722 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

[Java] 纯文本查看 复制代码
//请使用实现:
//已知项目的根目录下有一个student.txt,内容如下:
//			 1       郝婷婷    女      30
//			 2       赵鹏      男      35
//			 3       周强      男      38
//			 4       李艳欣    女      37
//			 5       朱可可    女      41
//			 6       张少荣    女      30
//			 7       王小军    男      28
//该文件中,每一行表示一个学生信息,从前往后依次是学号,姓名,姓名,年龄
//要求: 
//1.读取文件内容,把每一个学生信息封装为一个学生对象,存储到ArrayList集合中
//2.打印集合中的学生信息
//3.计算平均年分
//4.异常处理使用throws的方式

public class Test {
	public static void main(String[] args) throws IOException {
		// 创建输入流对象
		BufferedReader br = new BufferedReader(new FileReader("student.txt"));

		// 读取信息
		String line;
		ArrayList<Student> list = new ArrayList<>();
		while ((line = br.readLine()) != null) {
			// 切割读取的信息并用String数组接收
			String[] arr = line.split("\\s+");

			// 将年龄字符串转为int形式
			int age = Integer.parseInt(arr[3]);

			// 将字符串数组信息封装到学生对象并存入集合
			Student s = new Student();
			s.setCode(arr[0]);
			s.setName(arr[1]);
			s.setSex(arr[2]);
			s.setAge(age);
			list.add(s);

		}

		// 打印学生信息
		for (int i = 0; i < list.size(); i++) {
			Student s = list.get(i);
			System.out.println(s.getCode() + " " + s.getName() + " " + s.getSex() + " " + s.getAge());
		}

		// 打印平均年龄
		int sum = 0;
		for (int i = 0; i < list.size(); i++) {
			Student s = list.get(i);
			sum += s.getAge();
		}
		int avg = sum / (list.size());
		System.out.println("平均年龄为: " + avg);
	}
}

//学生类

public class Student {
	// 编号
	private String code;
	// 姓名
	private String name;
	// 性别
	private String sex;
	// 年龄
	private int age;

	public Student() {
		// TODO Auto-generated constructor stub
	}

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

	// get/set
	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getName() {
		return name;
	}

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

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public int getAge() {
		return age;
	}

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

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马