实验报告2解析

1.编写 Java 程序用于显示人的姓名和年龄。定义一个人类Person。 该类中应该有两个私有属性: 姓名 (name) 和年龄 (age) 。定义构造方法用来初始化数据成员。再定义显示(display()) 方法将姓名和年龄打印出来。在 main 方法中创建人类的实例然后将信息显示。

public class project {

	public static void main(String[] args) {
		Person per=new Person();//创建人类实例
		per.display();//显示信息
	}

}
class Person{//定义一个类Person
	//两个私有属性,用private
	private String name;
	private int age;
	Person(){//构造方法初始化
		name="张三";
		age=20;
	}
	void display(){//打印
		System.out.println(name);
		System.out.println(age);
	}
}

2.构造方法与重载:定义一个网络用户类,要处理的信息有用户 ID、用户密码、 email 地址。在建立类的实例时把以上三个信息都作为构造函数的参数输入 其中用户ID和用户密码是必须的,缺省的email地址是用户ID加上字符串“@gameschool.com”

public class InterUesr {
	public int ID;
	public String MiMa;
	public String email;
	
	public InterUesr(int ID,String MiMa,String email) {
		this.ID=ID;
		this.MiMa=MiMa;
		this.email=email;
	}

	public int getID() {
		return ID;
	}
	
	public String getMiMa() {
		return MiMa;
	}
	
	public static void main(String[] args) {
		InterUesr u1 = new InterUesr(123,"111",123+"@gameschool.com");
		System.out.println("用户 ID:"+u1.getID());
		System.out.println("用户密码:"+u1.getMiMa());
		System.out.println("email地址:"+u1.email);
	}
}
3.定义一个表示学生信息的类 Student,要求如下:

(1)类 Student 的属性如下:
sNO 表示学号; sName 表示姓名; sSex 表示性别; sAge 表示
年龄;sJava:表示 Java 课程成绩。
(2)类 Student 带参数的构造方法:
在构造方法中通过形参完成对成员变量的赋值操作。
(3)类 Student 的方法成员:
getNo():获得学号;
getName():获得姓名;
getSex():获得性别;
getAge()获得年龄;getJava():获得 Java 课程成绩


public class student {
	public String sNo;//学号;
	public String sName; //表示姓名;
	public String sSex ;//表示性别; 
	public String sAge ;//表示年龄;
	public String sJava;//:表示 Java 课程成绩。

	public student(){
		
	}
	public student(String sNo,String sName,String sSex,String sAge,String sJava) {
		this.sNo =sNo;
		this.sName =sName;
		this.sAge=sAge;
		this.sSex=sSex;
		this.sJava=sJava;
	}
	public String getsNo() {
		return sNo;
	}
	public String getsName() {
		return sName;
	}
	public String getsAge() {
		return sAge;
	}
	public String getsJava() {
		return sJava;
	}
	public String getsSex() {
		return sSex;
	}
	public void setsNo(String sNo) {
		this.sNo=sNo;
	}
	public void setsName(String sName) {
		this.sName=sName;
	}
	public void setsAge(String sAge) {
		this.sAge=sAge;
	}
	public void setsSex(String sSex) {
		this.sSex=sSex;
	}
	public void setsJava(String sJava) {
		this.sJava=sJava;
	}
	
}

set是设置,而get是获取,这两个方法是对数据进行设置和获取用的。而且,在类中使用set和get方法时,都是在set和get后面跟上一些特定的词来形成特定意思的方法名,比如set xxx()和get xxx(),表示设置xxx和获取xxx。

4.根据类 Student 的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生 Java 语言成绩的平均值,以及计算并输出他们 Java 语言成绩的最大值和最小值。

arr.add(s) 依次按照顺序向ArrayList中添加数据
arr.get(i) 获取指定位置元素


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

public class outstudent {
	
	public static void main(String[] args) {
		ArrayList<student> arr=new ArrayList<student>();
		
		for(int i=0;i<5;i++) {
			addstudent(arr);
		}
		findAllstudent(arr);

		

	}
	//定义一个方法,用于学生信息的收集
	public static void addstudent(ArrayList<student>arr) {
		Scanner sc=new Scanner(System.in);
		System.out.println("请输入学生学号");
		String sNo=sc.nextLine();
		System.out.println("请输入学生姓名:");
		String sName=sc.nextLine();
		System.out.println("请输入学生年龄:");
		String sAge=sc.nextLine();
		System.out.println("请输入学生性别:");
		String sSex=sc.nextLine();
		System.out.println("请输入学生成绩:");
		String sJava=sc.nextLine();
		//创建学生对象,把键盘录入的数据赋给学生对象的成员变量
		student s=new student();
		s.setsNo(sNo);
		s.setsName(sName);
		s.setsAge(sAge);
		s.setsSex(sSex);
		s.setsJava(sJava);
		
		//将学生对象添加到集合中
		arr.add(s);
		//给出添加成功提示
		System.out.println("添加学生成功!");
		
	}
	//定义一个方法,用于显示结果,并完成平均值的计算和最大最小值的寻找。
	public static void findAllstudent(ArrayList<student>arr) {
		double sum=0.0,pingjun;
		double[] j=new double[5];
		//显示表头信息
		System.out.println("学号\t姓名\t年龄\t性别\t成绩");
		//将集合中元素取出按照对应格式显示成员信息,
		for(int i=0;i<arr.size();i++) {
			student s=arr.get(i);
			System.out.println(s.getsNo()+"\t"+s.getsName()+"\t"+s.getsAge()+"\t"+s.getsSex()+"\t"+s.getsJava());
			j[i]=Double.parseDouble(s.getsJava());//将字符串数字转换成double型。
			sum+=j[i];
		}
		pingjun=sum/5.0;
		//最大最小值用排序也可以的
		Arrays.sort(j);
		System.out.println("平均"+pingjun);
		System.out.println("最大值"+j[4]+"最小值"+j[0]);
	}
	

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值