Как мне получить товары, добавленные в "корзину"?
Итак, я работаю над проектом, в котором я в основном имитирую интернет-магазин. У меня есть 20 клиентов, 2 администратора и 40 продуктов в целом. Я успешно получил программу, чтобы распечатать всех клиентов и администраторов с правильной информацией с ней. Однако мне нужно, чтобы у каждого клиента было от 1 до 3 случайных продуктов из моего "Products.txt-файл, но он не появится. Это может быть небольшая ошибка, но она сводит меня с ума, лол. Есть какие-нибудь подсказки, советы или советы? Мое нынешнее решение явно не работает.
Что я уже пробовал:
import java.util.*; import java.io.*; public class Program03 { public static void main(String[] args) { //Create the Array lists needed ArrayList<Administrator> administrators = new ArrayList<>(); ArrayList<Customer> customers = new ArrayList<>(); ArrayList<Product> products = new ArrayList<>(); //Create array of admins try { customers = loadCustomers(); administrators = loadAdministrators(); products = loadProducts(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } //Call the print people method printAdmins(administrators); printCustomers(customers); //Iterate through the list of customers and add products to their carts for (int i = 1; i < customers.size(); i++) { //Get the current customer from array list Customer customer = customers.get(i); //Create random number from 1 to 3 int numberOfProducts = (int) (Math.random() * 3) + 1; //Get a random product for (int j = 0; i < numberOfProducts; j++) { int productIndex = (int) (Math.random() * 40) + 1; Product product = products.get(productIndex); //Add the products to the car customer.addToCart(product); } } } //print people method public static void printAdmins(ArrayList<Administrator> people) { //Iterate through the array list and print for (int i = 0; i < people.size(); i++) { System.out.println(people.get(i)); } } static void printCustomers(ArrayList<Customer> people) { //Iterate throughout the array list and print for (int i = 0; i < people.size(); i++) { System.out.println(people.get(i)); } } //Load admins public static ArrayList<Administrator> loadAdministrators() throws IOException { //Create array list locally ArrayList<Administrator> admins = new ArrayList<>(); //load admins from a file File file = new File("Administrators.txt"); Scanner input = new Scanner(file); //Read the file while (input.hasNext()) { String SSN = input.next(); String fname = input.next(); String lname = input.next(); int employeeId = input.nextInt(); double salary = input.nextDouble(); String EOL = input.nextLine(); //Create admin object Administrator admin = new Administrator(SSN, fname, lname, employeeId, salary); //add admin to array list admins.add(admin); } //return return admins; } //Load customers public static ArrayList<Customer> loadCustomers() throws IOException { //Create array list locally ArrayList<Customer> shoppers = new ArrayList<>(); //load shoppers from file File file = new File("Customers.txt"); Scanner input = new Scanner(file); //Read the file while (input.hasNext()) { String SSN = input.next(); String fname = input.next(); String lname = input.next(); int customerId = input.nextInt(); String EOL = input.nextLine(); //Create Customer Object Customer shopper = new Customer(SSN, fname, lname, customerId); //add shopper to array list shoppers.add(shopper); } //return return shoppers; } //load products public static ArrayList<Product> loadProducts() throws IOException { //Create array list locally ArrayList<Product> items = new ArrayList<>(); //load items from file File file = new File("Products.txt"); Scanner input = new Scanner(file); //Read File while(input.hasNext()) { int productId = input.nextInt(); String name = input.next(); String category = input.next(); double price = input.nextDouble(); int numberInStock = input.nextInt(); String EOL = input.nextLine(); //Create product object Product item = new Product(productId, name, category, price, numberInStock); //Add item to array list items.add(item); } return items; } }
Member 13455134
Та часть, где предполагается добавить его, называется "\\итерация по списку клиентов и добавление продуктов в их тележки"
Richard MacCutchan
Насколько я могу судить, вы печатаете список клиентов до того, как добавите какие-либо продукты в их тележки.