1.String str = "张三:上机成绩=90,笔试成绩=78;李四:上机成绩=68,笔试成绩=98;王五:上机成绩=48,笔试成绩=58;赵六:上机成绩=55,笔试成绩=11;jim:上机成绩=44,笔试成绩=55;tom:上机成绩=22,笔试成绩=55;"; 要求: 使用面向对象思想实现 将每个学生信息,存入一个学生对象中. 将多个学生对象存入一个学生数组中. 按照总分进行升序显示输出
public class Demo7<zg> implements Comparable<Demo7> {
// String str = "张三:上机成绩=90,笔试成绩=78;李四:上机成绩=68,笔试成绩=98;王五:上机成绩=48,笔试成绩=58;赵六:上机成绩=55,笔试成绩=11;jim:上机成绩=44,笔试成绩=55;tom:上机成绩=22,笔试成绩=55;";
// 要求: 使用面向对象思想实现
// 将每个学生信息,存入一个学生对象中.
// 将多个学生对象存入一个学生数组中.
// 按照总分进行升序显示输出
private String name;
private int sg;
private int bg;
private int zg;
public Demo7(String name,int sg,int bg ,int zg){
this.name=name;
this.sg=sg;
this.bg=bg;
this.zg=zg;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSg() {
return sg;
}
public void setSg(int sg) {
this.sg = sg;
}
public int getBg() {
return bg;
}
public void setBg(int bg) {
this.bg = bg;
}
@Override
public int compareTo(Demo7 o) {
return this.zg-o.zg;
}
public int getZg() {
return zg=sg+bg;
}
public void setZg(int zg) {
zg=sg+bg;
}
@Override
public String toString() {
return "Demo7{" +
"name='" + name + '\'' +
", sg=" + sg +
", bg=" + bg +
", zg=" + zg +
'}';
}
}
public class Demo8 {
public static void main(String[] args) {
String str = "张三:上机成绩=90,笔试成绩=78;" +
"李四:上机成绩=68,笔试成绩=98;" +
"王五:上机成绩=48,笔试成绩=58;" +
"赵六:上机成绩=55,笔试成绩=11;" +
"jim:上机成绩=44,笔试成绩=55;" +
"tom:上机成绩=22,笔试成绩=55;";
String []a=str.split(";");//创建一个数组把内容装进去
Demo7[] demo1=new Demo7[a.length];
//for循环把数组里面的内容遍历
for (int i = 0; i < a.length; i++) {
String s=a[i];
System.out.println(s);
String name=s.substring(0,s.indexOf(":"));
String sg=s.substring(s.indexOf("=")+1,s.indexOf(","));
String bg=s.substring(s.lastIndexOf("=")+1);
int intsg=Integer.parseInt(sg);
int intbg=Integer.parseInt(bg);
Demo7 demo=new Demo7(name,intsg,intbg,intsg+intbg);
demo1[i]=demo;
}
Arrays.sort(demo1);
System.out.println(Arrays.toString(demo1));
}
}
2.模拟双色球摇奖功能
要求:
创建一个长度为5的int类型数组
从1-33的数字中随机取出5个不重复的数据,存入到数组中
然后按照从小到大的顺序输出.
public class Demo12 {
public static void main(String[] args) {
int[] s = new int[5];
Random a = new Random();
int b = 0;
int c=0;
// int s1=a.nextInt(34);
// System.out.println(s1);
while (true) {
int s1 = a.nextInt(34);//随机0~34的数字
boolean resent = true;//设置一个布尔值进行判断
b++;//b++
//对数组进行遍历
for (int i = 0; i < s.length; i++) {
//如果随机数与数组元素相同,布尔值变为false
if (s[i] == s1) {
resent = false;
break;
}
}
//如果布尔值为true的话,则给把随机数给数组赋值
if (resent) {
s[c] = s1;
c++;
}
//如果数组里的元素数为,那么结束该循环
if(c==5){
break;
}
}
System.out.println(b);
System.out.println(Arrays.toString(s));
}}