亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

嘗試向數組中的對象添加信息

嘗試向數組中的對象添加信息

一只甜甜圈 2023-10-19 21:27:41
所以,大家只是做一個作業,嘗試將姓名、課程和 ID 添加到數組中,并尋找比我目前所做的更干凈的方法。我目前所做的達到了我想要的,但我確信他們是一種更干凈的方式來做到這一點,就好像我有 100 個這樣的事情要做一樣,這將永遠需要    students[0].setName("John Doe");     students[1].setName("Jane Doe");     students[2].setName("John Smith");     students[0].setCourse("2BA");     students[1].setCourse("2BA");     students[2].setCourse("2BSc");     students[0].setID(44444444);     students[1].setID(23333333);     students[2].setID(22222222);
查看完整描述

3 回答

?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

關于每個數組條目背后的基礎對象的信息不足,但您可以使用構造函數參數將它們創建為單行代碼。


class MyArrayObject {

    private String name;

    private String course;

    private long id;


    public MyArrayObject(String name, String course, long id) {

        this.name = name;

        this.course = course;

        this.id = id;

    }

}

...然后像這樣填充你的數組


students[0] = new MyArrayObject("John Doe", "2BA", 444444);

students[1] = new MyArrayObject("Jane Doe", "2BA", 445566);

students[2] = new MyArrayObject("John Smith", "2BSc", 442200);

它仍然是意大利面條式代碼,但更少。


為了給您更好的答案,我們需要有關該對象的更多信息,它來自哪里,您擁有哪些數據源,以及為什么要使用此類硬編碼值。


查看完整回答
反對 回復 2023-10-19
?
楊__羊羊

TA貢獻1943條經驗 獲得超7個贊

您可以使用包含您的數據的文件。您可以選擇任何格式(XML、json、CSV 等)。假設您選擇了 CSV,這是表示數據的最簡單的格式之一。CSV 中的每一行將包含:


姓名、課程、ID


編寫一些代碼將文件逐行讀取到字符串中。然后對于每一行(每個字符串)你可以這樣做:


String [] studentsStr = line.split(',');

然后你的數組將在索引處保存 3 個字符串:


1:姓名 2:課程 3:ID


由于您的 CSV 文件可能包含不確定大小的學生,因此您可以使用 ArraList。


聲明數組列表


List<Student> studentL = new ArrayList<>();

對于 CSV 文本文件中的每一行:


Student std = new Student();

std.setName(studentsStr[0]);

std.setCourse(studentsStr[1]);

std.setID(studentsStr[2]);

studentL.add(std);

然后,您可以將任意數量的學生添加到 CSV 中,而無需對代碼進行任何更改。


查看完整回答
反對 回復 2023-10-19
?
開心每一天1111

TA貢獻1836條經驗 獲得超13個贊

真正的應用程序永遠不會像您在這里所做的那樣以硬編碼方式獲取業務價值。它們通常接受來自用戶輸入、數據庫或其他一些系統的值,并使用循環來處理基于集合和數組的數據結構。如果您正在為單元測試用例填充數據,那么使用 Student 類構造函數是一種替代方法。



查看完整回答
反對 回復 2023-10-19
  • 3 回答
  • 0 關注
  • 158 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號