我有一个功课,经过很多努力后,我没有成功解决它,所以我问它在这里,问题是:我们有一个学生名单和他们的成绩在一个字符串中。学号,名字,姓氏,课程名称,年级,然后用“;”分隔然后另一个学生的记录,所以字符串是这样的:需要关于java编程的帮助
75414133,Mehdi,Javan,Math,16; 88887777,Shadi,Khani,英语,18; 75414133,Mehdi,Javan,英语,12; 88887777,Shadi,Khani,Physiques,16; 512345678,Mohamad,Sayadi,Chemistry,15; 88887777,Shadi,Khani,Math,15;
我们需要一个java程序来计算等级的平均值,并且用他们的成绩记录类的名字(等级必须是升序)。我们必须使用List和map来实现这个代码。失认沽应该是这样的:
75414133,迈赫迪,爪哇:
Average: 14 English: 12 Math: 16
88887777,沙迪,哈尼:
Average: 16.5 Math: 15 Physiques: 16.5 English: 18
对不起家伙,我尽我所能。但我没有成功解决它。任何帮助表示赞赏。
编辑:这里是未完成的代码,我写了,这是错误的,但因为我是问到这里的一些用户,我写我错了代码写在这里:
public class Average
{
public static void main(String args[]){
String str ="75414133,Mehdi,Javan,Math,16;88887777,Shadi,Khani,English,18;12345678,Mohamad,Sayadi,Chemistry,15;75414133,Mehdi,Javan,English,12;88887777,Shadi,Khani,Math,15;88887777,Shadi,Khani,Physiques,16.5;12345678,Mohamad,Sayadi,Sport,17.25;75414133,Mehdi,Javan,English,12;12345678,Mohamad,Sayadi,Islamic Revolution,8";
String[] strRecords = str.split(";");
for(int i=0;i<strRecords.length;i++){
String[] strColon= strRecords[i].split(",");
for (int j=1;j<strRecords.length;j++){
if(Integer.valueOf(strRecords[i].substring(0,8)) ==Integer.valueOf(strRecords[j].substring(0,8))){
String strName = strColon[0] + "," + strColon[1]+"," +strColon[2];
System.out.println(strName);
}
}
}
}
}
您必须出示在奥德代码r我们帮助你,否则我们会失明。你到目前为止尝试了什么? – zero298
好的,我会编辑第一篇文章,并写我尝试的代码(尽管)它没有写得很好,是错误的,但我会。 –
请正确缩进您的代码。另外,你的代码有什么问题?它以什么方式不做你想要的? – Keppil