
正文
java新生入学代码 java学生类代码
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java程序设计,求代码 1.定义学生类,学生类有学号,姓名,语文成绩,数学成绩的属性和有参的构造
import java.util.Comparator;
public class Student implements ComparableStudent {
private int no;
private String name;
private String sex;
private int roomNo;
private double score;
public Student(int no, String name, String sex, int roomNo, double score) {
this.no = no;
this.name = name;
this.sex = sex;
this.roomNo = roomNo;
this.score = score;
}
public Student(int no, String name, String sex, double score) {
this.no = no;
this.name = name;
this.sex = sex;
this.score = score;
}
public int getNo() {
return no;
}
public void setNo(int no) {
this.no = no;
}
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 getRoomNo() {
return roomNo;
}
public void setRoomNo(int roomNo) {
this.roomNo = roomNo;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
@Override
public int compareTo(Student o) {
if (this.no o.no) return 1;
else if (this.no o.no) return -1;
else return 0;
}
@Override
public String toString() {
return "Student{" +
"no=" + no +
", name='" + name + '\'' +
", sex='" + sex + '\'' +
", roomNo=" + roomNo +
", score=" + score +
'}';
}
}
//性别比较器类
class SexComparator implements ComparatorStudent {
@Override
public int compare(Student o1, Student o2) {
if (o1.getSex().compareTo(o2.getSex()) 0) return 1;
else if (o1.getSex().compareTo(o2.getSex()) 0) return -1;
else return 0;
}
}
//寝室号比较器类
class RoomNoComparator implements ComparatorStudent {
@Override
public int compare(Student o1, Student o2) {
if (o1.getRoomNo() o2.getRoomNo()) return 1;
else if (o1.getRoomNo() o2.getRoomNo()) return -1;
else return 0;
}
}
//入学成绩比较器类
class ScoreComparator implements ComparatorStudent {
@Override
public int compare(Student o1, Student o2) {
if (o1.getScore() o2.getScore()) return 1;
else if (o1.getScore() o2.getScore()) return -1;
else return 0;
}
}
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class TestStudent {
public static void main(String[] args) {
Student s1 = new Student(1, "jack", "boy", 90);
Student s2 = new Student(5, "jack", "boy", 90);
Student s3 = new Student(4, "jack", "boy", 90);
Student s4 = new Student(2, "jack", "boy", 90);
ListStudent studentList=new ArrayList();
studentList.add(s1);
studentList.add(s2);
studentList.add(s3);
studentList.add(s4);
Collections.sort(studentList);
System.out.println(Arrays.toString(studentList.toArray()));
}
}
相关问答
Q1: 给段最简单的java代码 让我新手看一下
最简单的java代码肯定就是这个了,如下:
public class MyFirstApp
{
public static void main(String[] args)
{
System.out.print("Hello world");
}
}
“hello world”就是应该是所有学java的新手看的第一个代码了。如果是零基础的新手朋友们可以来我们的java实验班试听,有免费的试听课程帮助学习java必备基础知识,有助教老师为零基础的人提供个人学习方案,学习完成后有考评团进行专业测试,帮助测评学员是否适合继续学习java,15天内免费帮助来报名体验实验班的新手快速入门java,更好的学习java!
Q2: 求大神帮忙编两个java代码(学生java作业)
第一题: 元素的复制
import java.util.Arrays;
public class ArrayDemo {
public static void main(String[] args) {
int[] scores = {91,85,98,62,78,93};
int[] newScores=Arrays.copyOfRange(scores, 0, 5);//复制元素, 左开右闭区间[0,5)
System.out.println(Arrays.toString(newScores));//调用数组工具类的方法转成字符串并打印
}
}
第二题: 这题虽然使用集合更方便 , 但却是非常好的一维数组的训练题目.
解法一: 集合解决 随机产生7个不重复的数字很简单
import java.util.HashSet;
import java.util.Random;
public class NumberTest {
public static void main(String[] args) {
HashSetInteger set= new HashSetInteger();//元素不可重复的无序集合
Random rd=new Random();//随机产生器
while(set.size()7) {
set.add(rd.nextInt(36)+1);//产生1~36的随机数
//如果元素重复, 那么添加不上去
}
System.out.println(set);
}
}
解法二:一维数组 ,解决产生7个数字, 并升序排列
int[] nums 数组存储1~36个数组
boolean[] flags 数组存储的是和nums数组一一对应的true或者false,如果使用了就标记为true.,如果没有使用标记为false,
例如 随机产生了一个下标0 ,那么查看flags[0] ,如果是true, 那么说明该元素已经使用了,重新产生一个随机数, 如果是false ,那么表示nums[0]没有被使用
具体代码如下(稍微留个尾巴, 就是中不中的判断, 可以把两个数组都升序排序,然后元素一一比较,全部相同就是中了)
import java.util.Arrays;
import java.util.Random;
public class NumberDemo {
public static void main(String[] args) {
int[] nums= new int[36];//长度为36的数组 ,默认全是0
for (int i = 0; i nums.length; i++) {//利用for循环赋值1~36
nums[i]=i+1;
}
boolean[] flags=new boolean[nums.length];//长度和nums相同的数组,默认值全是false ,表示全部没有使用过
//用boolean值表示对应的nums里的元素是否被使用
int[] result=new int[7];//存储结果
Random rd = new Random();
for (int i = 0; i result.length; i++) {
int temp=rd.nextInt(nums.length);//随机产生下标
//System.out.println(Arrays.toString(result));
if(flags[temp]) {//如果已经被使用,那么i-1,并在此循环
i--;
//System.out.println("号码"+nums[temp]+"已经存在.再次循环");
}else {
result[i]=nums[temp];
flags[temp]=true;//标记true表示已经使用了
}
}
System.out.println("原始排序:"+Arrays.toString(result));
Arrays.sort(result);//升序排列
System.out.println("升序排列:"+Arrays.toString(result));
}
}
Q3: 求一个简单的java代码
public class Message {
public static void main(String[] args){
String name;
int age;
System.out.println("请输入姓名java新生入学代码,回车结束java新生入学代码:"); //提示输入
Scanner sc = new Scanner(System.in);
name = sc.nextLine(); //为变量赋值
System.out.println("请输入年龄java新生入学代码,回车结束java新生入学代码:");
age = sc.nextInt();
System.out.println("姓名:"+name+"\n年龄:"+age); //打印姓名及年龄
}
}
//不知道这样行么java新生入学代码?
java新生入学代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java学生类代码、java新生入学代码的信息别忘了在本站进行查找喔。







