Não consigo entrar em um laço !

Não estou conseguindo entrar dentro deste loop, o que faço ?

public static void verificarDesjejum(ArrayList<Ingrediente> ingredientes){
    System.out.println("Informe o ingrediente que deseja: ");
    String nome = ler.next();
    System.out.println("-------------------------- \n");
    Desjejum d = new Desjejum(ingredientes);


   for(Ingrediente in: ingredientes){
       if(menu == 1){
               
        System.out.println("Informe a quantidade em porcentagem de carboidrato que contem: ");
        double carbo = ler.nextDouble();
        System.out.println("-------------------------- \n");
        in.setCarbo(carbo);
        
        System.out.println("Informe a quantidade em porcentagem de proteina que contem: ");
        double prot = ler.nextDouble();
        System.out.println("-------------------------- \n");
        in.setProteina(prot);
        
        System.out.println("Informe a quantidade em porcentagem de gordura total que contem: ");
        double gordTotal = ler.nextDouble();
        System.out.println("-------------------------- \n");
        in.setGorduraTotal(gordTotal);
        
        System.out.println("Informe a quantidade em porcentagem de gordura saturada que contem: ");
        double gordSat = ler.nextDouble();
        System.out.println("-------------------------- \n");
        in.setGorduraSaturada(gordSat);
        
        System.out.println("Informe a quantidade de gramas de fibras que contem: ");
        int fibras = ler.nextInt();
        System.out.println("-------------------------- \n");
        in.setFibras(fibras);
        
        System.out.println("Informe a quantidade de miligramas de sodio que contem: ");
        int sodio = ler.nextInt();
        System.out.println("-------------------------- \n");
        in.setSodio(sodio);
        
        d.Verifica();
        //faltando os argumentos na chamada de método.
        
    }
   }
  
}

//METODO QUE VERIFICA A REFEICAO ALMOCO;
public static void verificarAlmoco(ArrayList<Ingrediente> ingredientes){
    System.out.println("Informe o ingrediente que deseja: ");
    String almoco = ler.next();
    System.out.println("-------------------------- \n");
    Almoco a = new Almoco(ingredientes);
    

        for(Ingrediente i : ingredientes){ 
            if(menu == 2){
            System.out.println("Informe a quantidade de carboidrato que contem: ");
            double carbo = ler.nextDouble();
            System.out.println("-------------------------- \n");
            i.setCarbo(carbo);
            
            System.out.println("Informe a quantidade de proteina que contem: ");
            double prot = ler.nextDouble();
            System.out.println("-------------------------- \n");
            i.setProteina(prot);
            
            System.out.println("Informe a quantidade de gordura total que contem: ");
            double gordTotal = ler.nextDouble();
            System.out.println("-------------------------- \n");
            i.setGorduraTotal(gordTotal);
            
            System.out.println("Informe a quantidade de gordura saturada que contem: ");
            double gordSat = ler.nextDouble();
            System.out.println("-------------------------- \n");
            i.setGorduraSaturada(gordSat);
            
            System.out.println("Informe a quantidade de fibras que contem: ");
            int fibras = ler.nextInt();
            System.out.println("-------------------------- \n");
            i.setFibras(fibras);
            
            System.out.println("Informe a quantidade de sodio que contem: ");
            int sodio = ler.nextInt();
            System.out.println("-------------------------- \n");
            i.setSodio(sodio);
            
            a.Verifica();
            
        }   
    }
}

Você já verificou se ele está entrando no for, mas não no if?

eu cheguei a testar sem o if, tambem nao deu.

Essa List já tem ingredientes cadastrados quando você chama o método?

Cara sei que é meio obvio, mas você verificou se “ingredientes” está vindo vazio?

meu metodo Ingrediente só contem getters e setters, como irei adicionar um ingrediente entao ? ajude-me amigo kkk

No parâmetro do seu método, está falando que você deve informar um ArrayList de ingrediente.

Então, antes de chamar o seu método, tente o seguinte:

ArrayList<Ingrediente> ingredientes = new Arraylist<>();

Ingrediente ingrediente1 = new Ingrediente();
ingredientes.add(ingrediente1);

Ai depois chama o seu método, utilizando o ArrayList criado anteriormente como parâmetro:

verificarDesjejum(ingredientes);

Cara ou eu to muito louco ou seu código é que está!

Acho que sua lógica é que está com problema. Você aparentemente quer criar uma refeição e para isso quer receber os ingredientes, mas está aparentemente fazendo as coisas fora de ordem…

Pode explicar o que você quer fazer?

No seu projeto, existe uma classe chamada Ingrediente, certo? Pois o seu método pede um ArrayList desse objeto.

Então, antes de entrar no método, você deve ter ingredientes cadastrados nesse ArrayList para ele poder percorrê-lo.

obrigado cara, consegui acessar, vlw !!