我有一個功課,經過很多努力後,我沒有成功解決它,所以我問它在這裏,問題是:我們有一個學生名單和他們的成績在一個字符串中。學號,名字,姓氏,課程名稱,年級,然後用「;」分隔然後另一個學生的記錄,所以字符串是這樣的:需要關於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