Один момент не понял совсем. Что делает этот блок кода?
switch (args[0]) {
case "-c":
int id = 0;
for (Product product : products) {
if (product.id > id) id = product.id;
}
String name = "";
for (int i = 1; i < args.length - 2; i++) {
name += args[i] + " ";
}
if (name.length() > 30) {
name = name.substring(0, 30);
}
String price = args[args.length - 2];
if (price.length() > 8) {
price = price.substring(0, 8);
}
String quantity = args[args.length - 1];
if (quantity.length() > 4) {
quantity = quantity.substring(0, 4);
}
Product product = new Product(++id, name.trim(), price, quantity);
products.add(product);
}