Pessoal,
Estou com um problema e não estou conseguindo resolver. Segue o os códigos abaixo:
List<Integer> lista = new ArrayList<Integer>();
lista.add(1);
lista.add(2);
lista.add(3);
lista.add(4);
Iterator<Integer> itera = lista.iterator();
byte[] bytes = new byte[4];
int i = 0;
while(itera.hasNext()){
int val = itera.next();
bytes[i] = (byte) val;
System.out.println(bytes[i]);
i++;
}
No código acima está imprimindo os números 1, 2, 3 e 4. Até ai tudo bem.
Agora veja o código abaixo:
List<Integer> lista = new ArrayList<Integer>();
lista.add(1234);
lista.add(3344);
lista.add(5444);
lista.add(6565);
Iterator<Integer> itera = lista.iterator();
byte[] bytes = new byte[4];
int i = 0;
while(itera.hasNext()){
int val = itera.next();
bytes[i] = (byte) val;
System.out.println(bytes[i]);
i++;
}
Na situação acima está imprimindo -46, 16, 68 e -91
Os números que estão sendo adicionados na lista é diferente dos números impressos.
Alguém sabe por que isso acontece?
Abraços