Nome da variável dinamico

nodeBytes é um contagem de quantos bytes foram recebidos.

entrada é onde eu recebo os bytes da porta serial.
O trecho do código é esse:

entrada = porta.getInputStream();

porta tem a porta COM aberta.

E entrada eh um array? Ele armazena bytes?

Eu perguntei para vc qual é o pacote e a classe dos objetos pq nao conheco os metodos de cada um e nem o que cada metodo retorna.

Vc pode colar os imports e a declaracao desses objetos?

Pelo que eu consegui entender o codigo que eu passei pra vc esta errado e vc nem precisaria do bufferLeitura.

Vou fazer o seguinte estou mandando em anexo o meu arquivo.
Assim fica mais fácil para vc entender o que eu fiz aqui.

Outra tentativa:

public void serialEvent(SerialPortEvent ev) { switch (ev.getEventType()) { case SerialPortEvent.BI: case SerialPortEvent.OE: case SerialPortEvent.FE: case SerialPortEvent.PE: case SerialPortEvent.CD: case SerialPortEvent.CTS: case SerialPortEvent.DSR: case SerialPortEvent.RI: case SerialPortEvent.OUTPUT_BUFFER_EMPTY: break; case SerialPortEvent.DATA_AVAILABLE: try { byte[] bufferLeitura = new byte[entrada.available()]; nodeBytes = entrada.read(bufferLeitura); if (nodeBytes == 0) { System.out.println("Nada lido!"); } else if (nodeBytes == 1) { System.out.println("Apenas um byte foi lido!"); } else { for (int i = 0; i < nodeBytes; i++) { System.out.println("Elemento["+i+"] : " + bufferLeitura[i]); } } } catch (Exception e) { JOptionPane.showMessageDialog(null, "Erro durante leitura! STATUS: " + e, "Erro!", JOptionPane.ERROR_MESSAGE); System.out.println("Erro durante a leitura: " + e); } System.out.println("n.o de bytes lidos : " + nodeBytes); break; } }

Desculpe não poder ajudá-lo, mas estou curioso… para que exatamente você precisa disso?