Visualizzazione dei risultati da 1 a 3 su 3

Discussione: unire due byte

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258

    unire due byte

    ciao a tutti,
    ho provato a spezzare il numero 2010, in due byte, e poi vorrei riunirli e ottenere 2010.
    Il problema è che mi segnala errore a questa riga: totale = totale >> 8;
    con possibile perdita di precisione. che fare?

    codice:
    public class prova_n{
    
    
    public static void main(String[] args){
    
    short totale;
    byte uno = (byte) 251;
    byte due = (byte) 2;
    
    
    totale = (short) uno;
    totale = totale >> 8;
    //totale = due & 0xFF;
    
    System.out.println(totale);
    
    }
    
    
    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: unire due byte

    Originariamente inviato da Lucked
    ho provato a spezzare il numero 2010, in due byte

    codice:
    short totale;
    byte uno = (byte) 251;
    byte due = (byte) 2;
    2010 in decimale? Perché in hex fa 7DA, quindi i due byte sono alto=7, basso=218
    Quei due valori che hai messo non quadrano ....

    Originariamente inviato da Lucked
    vorrei riunirli e ottenere 2010
    Il concetto in generale:

    codice:
    byte highByte = 7;
    byte lowByte = (byte) 218;
    
    short word = (short) (highByte << 8 | lowByte & 0xff);    // word = 2010
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    1,258
    si bravissimo, grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.