java 为何 无效_Java 我的程序哪里有错啊?为什么set的方法无效,get也有问题!!!...

packagechapterTwo;classPerScore{StringstuID;Stringname;Stringsex;floatscore;publicPerScore(StringstuID,Stringname,Stringsex,floatscore){super();this.stuID=stuID;this.name...

package chapterTwo;

class PerScore{

String stuID;

String name;

String sex;

float score;

public PerScore(String stuID, String name, String sex, float score) {

super();

this.stuID = stuID;

this.name = name;

this.sex = sex;

this.score = score;

}

public boolean equals(PerScore stu){

return stu.stuID.equals(this.stuID);

}

public String toString(){

return (stuID+" "+name+" "+sex+" "+score);

}

}

public class ClassScoreList extends ArrayList {

public ClassScoreList(int n){

super(n);

}

public void insertRecode(String stuID,String name,String sex,float score){

insert(new PerScore(stuID,name,sex,score));

}

public boolean setScore(String stuID,float score){

int tem=indexOf(new PerScore(stuID,"","",0));

if(tem>0){

((PerScore)this.get(tem)).score=new Float(score);

return true;

}

return false;

}

public float getScore(String stuID){

int tem=indexOf(new PerScore(stuID,"","",0));

if(tem>0){

return Float.valueOf(((PerScore)this.get(tem)).score).floatValue();

}

return -1;

}

public PerScore indexOf(String name){

int i;

for(i=1;i<=this.length();i++){

if(((PerScore)this.get(i)).name.compareTo(name)==0)

return ((PerScore)get(i));

}

return null;

}

public void printFailList(){

PerScore tem;

for(int i=1;i<=this.length();i++){

tem=(PerScore)get(i);

if(Float.valueOf(tem.score).floatValue()<60){

System.out.println(tem.toString());

}

}

}

public float average(){

float sum=0;

PerScore tem;

for(int i=1;i<=this.length();i++){

tem=((PerScore)get(i));

sum=sum+Float.valueOf(tem.score).floatValue();

}

return sum/this.length();

}

}

测试:

package chapterTwo;

public class ClassListTest {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

ClassScoreList cl=new ClassScoreList(100);

cl.insertRecode("01", "一号","男", 60);

cl.insertRecode("03", "二号","男", 61);

cl.insertRecode("02", "三号","男", 62);

cl.insertRecode("04", "四号","男", 55);

cl.insertRecode("09", "五号","男", 33);

cl.insertRecode("07", "六号","男", 77);

cl.insertRecode("06", "七号","男", 88);

cl.insertRecode("05", "八号","男", 10);

cl.insertRecode("08", "九号","男", 99);

cl.setScore("02", 44);

System.out.println("学号为02成绩:"+cl.getScore("02"));

System.out.println("学号为08成绩:"+cl.getScore("08"));

System.out.println("不及格的名单:");

cl.printFailList();

System.out.println("平均成绩:"+cl.average());

System.out.println(cl.toString());

}

}

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值