Sou novo na Linguagem Java e estou criando um programa onde ele tem uma classe pizza onde calcular o preço e contabiliza os ingrediente e imprimi o preço e os ingredientes, também tenho uma classe cliente onde fornece os ingredientes e chama o método do preço e de imprimir, mas ao imprimir dois objetos diferentes fica um único valor e os mesmo ingredientes;
Essa é a classe Pizza
import java.util.ArrayList;
import java.util.HashMap;
public class Pizza {
private ArrayList <String> ingrediente = new ArrayList<String>();
private static HashMap <String, Integer> contabiliza = new HashMap<String, Integer>();
public void adicionaIngrediente(String n){
ingrediente.add(n);
contabilizaIngrediente(n);
}
public void getPreco(){
if (contabiliza.size() <= 2){
System.out.printf("O valor de sua pizza: R$ 15,00\n");
}
else if (contabiliza.size() <= 5 && contabiliza.size() >= 3){
System.out.printf("O valor de sua pizza: R$ 20,00\n");
}
else {
System.out.printf("O valor de sua pizza: R$ 23,00");
}
}
private static void contabilizaIngrediente(String n){
contabiliza.put(n, null);
contabiliza.size();
}
public void imp(){
System.out.printf("Ingrediente utilizados: %s\n\n", ingrediente);
}
}
Essa é a classe cliente:
public class ClienteTeste {
public static void main(String[] args) {
Pizza pizza = new Pizza();
Pizza pi = new Pizza();
pizza.adicionaIngrediente("Mussarela");
pizza.adicionaIngrediente("Presunto");
pizza.adicionaIngrediente("Tomate");
pizza.adicionaIngrediente("Carne de Sol");
pizza.adicionaIngrediente("Oliva");
pizza.adicionaIngrediente("Pimentão");
pi.adicionaIngrediente("Calabresa");
pi.adicionaIngrediente("Azeite");
pizza.getPreco();
pizza.imp();
pi.getPreco();
pi.imp();
}
}
Ai imprimir tudo igual, o que fazer?