尝试输出 ArrayList 时是否遗漏了空格字符?

问题描述 投票:0回答:1

代码运行良好,但我在方法中显示 ArrayList 时遇到问题。我尝试寻找我可能错过的任何空白字符。

    public static void main(String[] args) {
    int choice = 0;
    String input ="";
    do{
        
        ArrayList<String> fruits = new ArrayList<>();
        
        System.out.println("Choose an option: ");
        System.out.println("1. Add a fruit\n2. Delete a fruit");
        System.out.println("3. Display fruits\n4. Exit");
        
        choice = scan.nextInt();
        
        if(choice == 1)
        {
          input = addFruit(input);
          fruits.add(input);
        }
        else if(choice == 2)
        {
            input = deleteFruit(input);
            fruits.remove(input);
            System.out.println(input + " deleted from the list");
        }
        else if(choice == 3)
        {
           displayFruit(fruits); 
        }
    }while(choice !=4);
    
    System.out.println("Exiting the program. Goodbye!");
  }
public static void displayFruit(ArrayList<String> f)
{
    for(int i=0;i<f.size();i++)
    {
        System.out.println("Here is the list: " + f.get(i));
    }
}
public static String addFruit(String i)
{
    scan.nextLine();
    System.out.print("Enter the name of the fruit: ");
    i = scan.nextLine();
    return i;
}
public static String deleteFruit(String i)
{
    scan.nextLine();
    System.out.print("Enter the name of the fruit you want to delete: ");
    i = scan.nextLine();
    return i;
}
}

我尝试重写displayFruit的输出循环,但没有成功。

java arraylist methods output
1个回答
0
投票

由于您在 do-while 循环内初始化以下语句,因此每次执行 while 循环时都会对其进行初始化

ArrayList<String> fruits = new ArrayList<>();
    

将上面的行移到 while 循环之前

© www.soinside.com 2019 - 2024. All rights reserved.