使用for循环向ArrayList中添加数字-Java

使用for循环向ArrayList中添加数字-Java,java,arrays,methods,arraylist,Java,Arrays,Methods,Arraylist,超市想奖励每天最好的顾客,在超市的屏幕上显示顾客的名字。为此,客户的购买金额存储在ArrayList中,客户的姓名存储在相应的ArrayList中。实现一个公共静态字符串nameOfBestCustomer(ArrayList sales,ArrayList customers)方法,该方法返回销售额最大的客户的名称。编写一个程序,提示出纳输入所有价格和名称,将它们添加到两个数组列表中,调用您实现的方法,并显示结果。使用0的价格作为哨兵 到目前为止,我在使用for循环通过键盘将数字/名称输入数组

超市想奖励每天最好的顾客,在超市的屏幕上显示顾客的名字。为此,客户的购买金额存储在ArrayList中,客户的姓名存储在相应的ArrayList中。实现一个公共静态字符串nameOfBestCustomer(ArrayList sales,ArrayList customers)方法,该方法返回销售额最大的客户的名称。编写一个程序,提示出纳输入所有价格和名称,将它们添加到两个数组列表中,调用您实现的方法,并显示结果。使用0的价格作为哨兵

到目前为止,我在使用for循环通过键盘将数字/名称输入数组时遇到问题。这就是我目前所拥有的

import java.util.Arrays;
import java.util.ArrayList;
import java.util.Scanner;

public class TopCustomer {

    public static String nameOfBestCustomer(ArrayList<Double> sales, ArrayList<String> customers) {

}

public static void main (String [] args){
    ArrayList<Double> sales = new ArrayList<Double>();
    ArrayList<String> customer = new ArrayList<String>();
    Scanner in = new Scanner(System.in);        
    System.out.print("How many Customers are there?");
    int num = in.nextInt();

    for (int i = 1; num <= i; i++) {
        System.out.print("Enter name of customer " + i + ": \n");
        customer.add(i) = in.nextString();
        System.out.print("Enter how much customer " + i + ": \n");
        sales.add(i) = in.nextDouble(); 
    }
}
导入java.util.array;
导入java.util.ArrayList;
导入java.util.Scanner;
公共类顶级客户{
贝斯特客户的公共静态字符串名称(ArrayList sales,ArrayList customers){
}
公共静态void main(字符串[]args){
ArrayList sales=新建ArrayList();
ArrayList客户=新的ArrayList();
扫描仪输入=新扫描仪(系统输入);
System.out.print(“有多少客户?”);
int num=in.nextInt();
对于(int i=1;num您的错误如下:

for (int i = 1; num <= i; i++) { 

您的错误如下:

for (int i = 1; num <= i; i++) { 


这里有两个错误,我在下面更正了它们

for (int i = 0; i < num; i++){
    System.out.print("Enter name of customer " + (i+1) + ": \n");
    customer.add(in.next());
    System.out.print("Enter how much customer " + (i+1) + ": \n");
    sales.add(in.nextDouble()); 
}
for(int i=0;i

首先,您的for循环应该按照我介绍的方式进行格式化,否则它总是立即结束,除非只有一个客户,并且您使用的
.add()
方法会自动将内部内容添加到数组列表的末尾。

您这里有两个错误,我在下面更正了它们

for (int i = 0; i < num; i++){
    System.out.print("Enter name of customer " + (i+1) + ": \n");
    customer.add(in.next());
    System.out.print("Enter how much customer " + (i+1) + ": \n");
    sales.add(in.nextDouble()); 
}
for(int i=0;i

首先,您的for循环应该按照我介绍的方式进行格式化,否则它总是立即结束,除非只有一个客户,并且您使用的
.add()
方法会自动将内部内容添加到数组列表的末尾。

使用
customer.add(in.nextString());
与销售相同。我仍然收到一个错误:找不到symbol customer.add(in.nextString());使用
customer.add(in.nextString());
与销售相同。我仍然收到一个错误:找不到symbol customer.add(in.nextString());谢谢您的帮助!我仍然收到一个错误:找不到symbol customer.add(in.nextString());谢谢您的帮助!我仍然收到一个错误:找不到symbol customer.add(in.nextString());
customer.add(in.nextString())
sales.add(in.nextDouble());
for (int i = 0; i < num; i++){
    System.out.print("Enter name of customer " + (i+1) + ": \n");
    customer.add(in.next());
    System.out.print("Enter how much customer " + (i+1) + ": \n");
    sales.add(in.nextDouble()); 
}