第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

制作雜貨籃

制作雜貨籃

慕田峪7331174 2022-05-12 17:30:00
所以我正在嘗試創(chuàng)建一個(gè)程序,允許用戶將物品放入雜貨籃中。第 1 步:用戶應(yīng)該能夠添加帶有名稱和價(jià)格的雜貨項(xiàng)目。步驟2:籃子上不得添加重復(fù)名稱第 3 步:用戶應(yīng)該能夠刪除指定名稱的雜貨。第 4 步:用戶應(yīng)該能夠看到購物籃中的所有內(nèi)容。我知道我快完成了,但我堅(jiān)持第 3 步和第 4 步,有什么建議嗎?這是我的代碼public class Main {public static void main(String[] args) {Scanner myReader = new Scanner(System.in);        while (true) {    System.out.println("What would you want to do today?");    System.out.println("(A)dd grocery item\n(R)emove grocery item\n(S)ee all items");     System.out.println("Enter Command: ");    String toDo = myReader.nextLine();        if (toDo.equals("A")) {            System.out.print("New Item Name: ");            String grocery = myReader.nextLine();            GroceryPackage grocery1 = new GroceryPackage();            grocery1.addGrocery(grocery);            System.out.print("New Item Price: ");            String groceryPrice = myReader.nextLine();            grocery1.addGrocery(groceryPrice);            System.out.println("Added new item Succesfully!");        }        if (toDo.equals("R")) {            System.out.print("Name of the Item you want to Remove: ");            String removeItem = myReader.nextLine();            removeItem.removeGrocery(grocery);        }        if (toDo.equals("S")) {            System.out.print(GroceryPackage);        }        System.out.println("Thanks!");    }}}public class GroceryPackage {private String addGrocery;private boolean groceryPrice;private String removeGrocery;private String grocery1;public void setGrocery1(String grocery1) {    this.grocery1 = grocery1;}public void setListofGrocery(ArrayList<String> listofGrocery) {    this.listofGrocery = listofGrocery;}private ArrayList<String> listofGrocery;public GroceryPackage(String addGrocery, boolean groceryPrice) {    this.addGrocery = addGrocery;    this.groceryPrice = groceryPrice;                }public GroceryPackage() {    this.listofGrocery = new ArrayList<String>();}
查看完整描述

1 回答

?
開心每一天1111

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊

不幸的是,這個(gè)程序有太多問題,無法簡單地解決這個(gè)問題。您確實(shí)需要縮減程序并努力使其盡可能簡單。你的程序遠(yuǎn)比它需要的大。

在同一個(gè)文件中不能有兩個(gè)公共類。您的“GroceryPackage”類似乎沒有提供任何您無法使用 ArrayList 變量“l(fā)istofGrocery”本身的方法做的事情,除了跟蹤價(jià)格(它不做)。它不必要地使程序復(fù)雜化。

您可以嘗試完全刪除它的“public”關(guān)鍵字,或者使其成為 Main 的私有或靜態(tài)內(nèi)部類。但是,我建議只是擺脫它。我真的不認(rèn)為你需要它。

從技術(shù)上講,您還沒有達(dá)到第 2 步。沒有什么可以防止 ArrayList 中出現(xiàn)重復(fù)值。我會用 aHashMap<String, Double>代替。這將允許您將“雜貨”存儲為字符串,其價(jià)格為 Double 值。

您可以在 GroceryPackage 中使用“getter”和“setter”方法來獲取、修改和返回您的 ArrayList,直接使用獲取變量GroceryPackage.listofGrocery(如果變量是私有的,listofGrocery 將無法使用它),或者只是將其設(shè)為你的主要課程。最后一種是最簡單的選擇。

我注意到您實(shí)際上從未將“l(fā)istofGrocery”變量初始化為“GroceryPackage”的屬性。

從風(fēng)格上講,“l(fā)istofGrocery”應(yīng)該是“l(fā)istOfGrocery”。

您沒有在 GroceryList 中使用“grocery1”屬性。

要解決第二步,籃子上不應(yīng)添加重復(fù)的名稱

要么遍歷數(shù)據(jù)結(jié)構(gòu)中的所有值,要么使用拋出異?;蚍祷乜深A(yù)測類型值的數(shù)據(jù)結(jié)構(gòu),如果要添加的值內(nèi)部有重復(fù)值。確保無論您做什么,都不會替換數(shù)據(jù)結(jié)構(gòu)中已經(jīng)存在的任何值。

為了解決第三步,“用戶應(yīng)該能夠刪除指定名稱的雜貨?!?/strong>

你嘗試給你的“removeGrocery()”方法一個(gè)參數(shù),即使它不需要任何參數(shù)。此外,clear() 方法會刪除整個(gè) ArrayList 中的所有值。仔細(xì)查看可用于您選擇的任何數(shù)據(jù)結(jié)構(gòu)的方法。

對于第四步,“用戶應(yīng)該能夠看到購物籃中的所有內(nèi)容”。

遍歷籃子的所有內(nèi)容。

總結(jié)一下。

我大多避免給你關(guān)于你的程序問題的直接答案。但是,希望你能接受我所說的并意識到你哪里出錯(cuò)了。實(shí)際上,有成千上萬種不同的方法可以讓您的程序滿足要求。請務(wù)必在線仔細(xì)閱讀javadocs。他們是無價(jià)的。最后,我注意到您從不在程序中使用任何循環(huán)。這些是新手程序員最好的朋友。學(xué)會愛他們。


查看完整回答
反對 回復(fù) 2022-05-12
  • 1 回答
  • 0 關(guān)注
  • 111 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號