我有一個CS類的介紹性作業。我有一個名爲Car的類和一個單獨的數據文件,用於稍後的文件重定向。我到:在Java中,如何使用循環實例化新對象,將它們存儲在數組中,然後使用它們?
使用定點循環,在化妝,一年,每節車廂 對象的價格看,實例化對象,並將其存儲在陣列carArr []英寸例如,如果您創建一個分配給名爲 car1的變量的汽車對象,則可以執行:carArr [i] = car1其中「i」是一個int計數器。 此外,統計數組中的元素,因爲它們都存儲在一個int 變量,如「我」或numCars
這是到目前爲止我的代碼:
Scanner scan = new Scanner(System.in);
final int SIZE_ARR = 30;
Car [] carArr = new Car[SIZE_ARR];
int i = 0;
int numcars = 0;
String make = "";
int year = 0;
double price = 0.0;
final String SENT = "EndDatabase";
while (!scan.next().equals(SENT))
{
make = scan.next();
year = scan.nextInt();
price = scan.nextDouble();
Car car1 = new Car(make, year, price);
carArr[i] = car1;
i++;
numCars++;
}
如何創建一個新的每次我經過循環並讀入不具有相同名稱的新數據時,Car對象? 他們需要有不同的名字嗎? 現在,我將製作一堆名爲car1的物體。我最終必須打印出數據庫,然後將它們作爲搜索關鍵字在新的Car對象中讀取。然後,按鍵將依次搜索carArr數組。 由於數組中的每個元素都填充了一個同名的對象,搜索會產生困惑嗎?
而且,當我通過搜索的陣列和我的存儲對象比較我的搜索對象做我需要做的:
key.equals(carArr[i])
威爾每個對象的實例變量進行相互比較?
在我的Car類中,我需要爲我的year,make和price實例變量提供一個accessor方法。我需要在哪裏使用這些? 它也說明我必須有一個叫做setPrice的「mutator方法」和「等於方法」。 任何想法他們對我來說意味着什麼? 對不起,這和多個問題的長度。我只是想保持領先於我的工作量,而我的老師不回覆電子郵件。謝謝!編號*********************************** *********** 我明白了。謝謝!
我需要使用一個數組而不是數組列表。我也需要使'價格'翻倍,因爲我需要在我的Car類中使用格式化方法。我已經說過了。此外,你是什麼意思「擺脫'car1' – art3m1sm00n
另外,你是對的,我必須調整我的哨兵循環,以便讀入的第一個數據不會丟棄,如果它不是哨兵。我只是最初在循環之前閱讀它,然後在我的循環結束時再次閱讀它 – art3m1sm00n
@GabrielleLee:對不起,我編輯了這篇文章 - 我的意思是寫:'carArr [i] = new Car(make,年份,價格);' - 這意味着你根本不需要'car1'變量,只是因爲你必須在'Car'中有一個方法來格式化價格並不意味着它必須是'double' - 你也可以格式化'BigDecimal'值... –