Como dar baixa no estoque num item especifico em vez de todos os itens

Meu código da baixa de estoque em todos os produtos na minha lista:

System.out.println("Digite o código do produto:");
int codigo = sc.nextInt();
boolean encontrado = false;
sc.nextLine();

for (int index = 0; index < p.size(); index++) {
  Produtos prod = p.get(index);
  
  if (codigo == (prod.getCodigo())) {
    System.out.println("Produto encontrado!!");
    sc.nextLine();
    
    System.out.println("Produto: "+prod.getNome());
    v.setProdutoVendido(prod.getNome());
    
    System.out.println();
    System.out.println("Aperte ENTER para continuar!");
    
    encontrado = true;
    sc.nextLine();
  }
}

if (!encontrado) {
  System.out.println("Produto não encontrado!!");
  voltarMenu(sc);
  continue;
}

DateTimeFormatter data = DateTimeFormatter.ofPattern("dd/MM/yyyy");
LocalDateTime now = LocalDateTime.now();

System.out.println("Data dd/MM/yyyy [Pressione enter para pegar a data de agora]:");
v.setDataVenda(sc.nextLine());

if (v.getDataVenda().equals("")) {
  System.out.println( data.format(now));
}

System.out.println(v.getDataVenda());

System.out.println("Quantidade:");
v.setQtdVendida(sc.nextInt());

produtos.setQtdEstoque(produtos.getQtdEstoque()-v.getQtdVendida());
sc.nextLine();

vendas.add(v);

System.out.println(" Finalizado!!");
voltarMenu(sc);

Não entendi muito bem a dúvida. De qualquer forma, essa parece ser apenas uma parte do seu projeto. Para dar baixa no estoque, imagino que seria algo como diminuir a quantidade de itens disponíveis.

Sim, mas em vez de abaixar a quantidade de um item só ,abaixa de todos os elementos da minha lista