私が作ったクラスのタイプの複数のオブジェクトを作成しようとしています。次に、これらの値を配列リストに転送します。異なる名前を持つwhileループを使用してオブジェクトを作成するにはどうすればよいですか。たとえば、ここに私のコードがありますが、1つの名前のオブジェクトのみを作成します。
Customer cust = new Customer("bob", 20.0);
あなたが見たいなら私のコンストラクタ:
public Customer(String customerName, double amount)
{
String name=customerName;
double sale=amount;
}
StoreTestクラス(メインメソッドを使用):
import Java.util.ArrayList;
import Java.util.Scanner;
public class StoreTest {
ArrayList<Customer> store = new ArrayList<Customer>();
public static void main (String[] args)
{
double sale=1.0; //so the loop goes the first time
//switch to dowhile
Scanner input = new Scanner(System.in);
System.out.println("If at anytime you wish to exit" +
", please press 0 when asked to give " +
"sale amount.");
while(sale!=0)
{
System.out.println("Please enter the " +
"customer's name.");
String theirName = input.nextLine();
System.out.println("Please enter the " +
"the amount of the sale.");
double theirSale = input.nextDouble();
store.addSale(theirName, theirSale);
}
store.nameOfBestCustomer();
}
}
顧客クラス:
public class Customer {
private String name;
private double sale;
public Customer()
{
}
public Customer(String customerName, double amount)
{
name=customerName;
sale=amount;
}
}
ストアクラス(arraylistをいじるためのメソッドがあります:
import Java.util.ArrayList;
public class Store {
//creates Customer object and adds it to the array list
public void addSale(String customerName, double amount)
{
this.add(new Customer(customerName, amount));
}
//displays name of the customer with the highest sale
public String nameOfBestCustomer()
{
for(int i=0; i<this.size(); i++)
{
}
}
}
このコードを使用できます...
public class Main {
public static void main(String args[]) {
String[] names = {"First", "Second", "Third"};//You Can Add More Names
double[] amount = {20.0, 30.0, 40.0};//You Can Add More Amount
List<Customer> customers = new ArrayList<Customer>();
int i = 0;
while (i < names.length) {
customers.add(new Customer(names[i], amount[i]));
i++;
}
}
}