Problema ao mostrar array

Opa Galera, eu tô com uma grande dúvida aqui.

Eu tenho uma tabela onde tem nome do produto, valor, qtde e código de venda.
Quero imprimir um array de acordo com o código de venda. Vou explicar como minha tabela está:

Nome ------- valor ------ qtde ------ codigo
Telha ------ 2,00  ------ 3    ------ 2
Cimento ---- 3,00  ------ 10   ------ 2
Parafuso --- 1,00  ------ 1    ------ 2
Arroz ------ 3,00  ------ 4    ------ 5
Feijão ----- 5,00  ------ 5    ------ 5

Eu criei um for Que percorre a tabela. Quando o código for igual ele adiciona os itens a um array.
Quando este código for diferente, ele tem que imprimir.
Cara parece muito simples, mas não tô conseguindo véi kkk
Dentro do for tô usando if-else.

Alguém pode me ajudar? Pois ele não tá fazendo isso kk

Posta o código, pra conseguirmos entender melhor.

Um momento amigo.

public void imprimircodigos(){
ArrayList conteudo = new ArrayList();
numero = 0;
for(int i=0; i<tabela.getRowCount(); i++){
codigo = Integer.parseInt(tabela.getValueAt(i, 11).toString());

        String qtde = tabela.getValueAt(i, 3).toString();
        String descricao = tabela.getValueAt(i, 4).toString();
        String valor = tabela.getValueAt(i, 5).toString();
        String subtotal = tabela.getValueAt(i, 6).toString();
        
       if (codigo==numero){
        conteudo.add("\n"+descricao);
        conteudo.add("\n"+qtde+"  x  "+valor+"  =  "+subtotal); 
        
       }
       else if(codigo!= numero){
       System.out.println(conteudo);
       }
      
       numero = codigo;}

// A ideia aqui é percorrer a tabela, pegar os dados das linhas que tem o mesmo codigo, adcionar no array e mostrar. Quando passar para uma linha em que o codigo ja é diferente, ja percebi que tem que limpar o array e voltar a adicionar ele com os proximos dados. Isso que eu nao consigo cara!

Bem, primeiro você poderia criar uma classe Produto que teria todos os atributos de um produto, mais ou menos assim:

public class Produto {

    private String nome;
    private double valor;
    private int qtde;
    private int codigo;
    private double subTotal;

    public Produto(String nome, double valor, double subTotal, int qtde, int codigo) {
        this.nome = nome;
        this.valor = valor;
        this.subTotal = subTotal;
        this.qtde = qtde;
        this.codigo = codigo;
    }

    public String getNome() {
        return nome;
    }

    public double getValor() {
        return valor;
    }
 
    public double getSubTotal() {
        return subTotal;
    }

    public int getQtde() {
        return qtde;
    }

    public int getCodigo() {
        return codigo;
    }
}

Assim você poderia usar o Diamond Operator das coleções no ArrayList, o que vai te auxiliar muito quando for usar o ArrayList, porquê vai ter um controle melhor quando estiver adicionando os produtos encontrados . Você também pode fazer um método para achar os produtos com o codigo que você quiser. Tipo assim:

public ArrayList<Produto> procurarProdutosPorCodigo(int codigoProcurado) {
    ArrayList<Produto> produtos = new ArrayList<Produto>;

    for (int i = 0; i < tabela.getRowCount(); i++) {
        int codigo = Integer.parseInt(tabela.getValueAt(i, 11));
        if (codigo == codigoProcurado) {
            String nome = tabela.getValueAt(i, 3).toString();
            double valor = tabela.getValueAt(i, 4);
            double subTotal = tabela.getValueAt(i, 6);
            int qtde = tabela.getValueAt(i, 5);
            produtos.add(new Produto(nome, valor, subTotal, qtde, codigo));
        }
    }
    return produtos;
}

Por ultimo só precisa mostrar os produtos que foram coletados com o método procurarProdutosPorCodigo().

public static void main(String[] args) {
    ArrayList<Produto> produtos = procurarProdutosPorCodigo(2);

    for (Produto produto : produtos) {
        System.out.println(produto.getNome + " | " + produto.getCodigo);
    }
}

Esse código que fiz é somente para te orientar, provavelmente não irá funcionar no seu código. Então tente usa-ló como base pra fazer o seu.

Caso tenha mais dúvidas é só falar que tento auxilar.