ArrayList
のIngredients
を入力しようとしていましたが、これは成分名(文字列)、価格(ダブル)、カロリー数整数)、成分が菜食主義の場合(ブール値)。スキャナーを使用してオブジェクトのArrayListを入力
複数の成分があるので、私はArrayList
を使うべきだと思った。スキャナからのデータで原料オブジェクトをどのように埋めるのですか?これは私がこれまで持っているものです。
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int numberOfIngredients = s.nextInt();
List<Ingredient> ingredientArrayList = new ArrayList<Ingredient>();
for (int i = 0; i< numberOfIngredients; i++){
String ingredientName = s.next();
double pricePerOunce = s.nextDouble();
boolean isVegetarian = s.nextBoolean();
int numberOfCalories = s.nextInt();
ingredientArrayList.add(ingredientName, pricePerOunce, numberOfCalories, isVegetarian);
}// ends for loop to fill the ingredientArray
}
何の問題、あなたが書いたコードを持っていますか?また、おそらくこれに答えるために、少なくともあなたの 'Ingredient'クラスのコンストラクタを見る必要があります。 – nhouser9
あなたはList of Ingredientオブジェクトを持っているので、新しいIngredientオブジェクトを作成して追加するだけです。 – NAMS
'ArrayList'への挿入速度を上げるには、成分の数を[ArrayList'コンストラクタ]に渡します(https://docs.oracle.com/javase/8/docs/api/java/util/ArrayList .html#ArrayList-int-)。 'new ArrayList <>(numberOfIngredients)' – 4castle