Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #32898

Re: number to byte[]

From Nigel Wade <nmw@ion.le.ac.uk>
Newsgroups comp.lang.java.programmer
Subject Re: number to byte[]
Date 2015-10-19 10:43 +0100
Message-ID <d8jsa9Fi4ifU1@mid.individual.net> (permalink)
References <mvsv9r$ohb$1@ls237.t-com.hr> <mvtd9u$c4m$1@dont-email.me> <mvud46$eat$1@ls237.t-com.hr>

Show all headers | View raw


On 17/10/15 22:03, Askfor wrote:
> It is going to be a part of a data header, which needs to be of fixed length. Also it will contain a value of an offset
> which cabn't be longer than 32-bits. So, I don't care how big int actually is, as long as it is big enough to hold 32
> bit unsigned value.

int is signed, as are all Java integers.
int won't hold a 32bit unsigned integer.

It will hold a 4-byte value as long as you don't attempt to interpret that value as a number, for example by performing 
any arithmetic on the value. If the MSB of the MSbyte is 1, it will be interpreted as being a negative number. Don't 
forget that byte is also signed, so the MSbyte would also be negative.
If you need a 32bit unsigned value then you must promote it to 64bit, without sign extension.

Of course, you could write your own UnsignedInteger class, with appropriate storage, and input/output methods.
In the long run it might cause you the least surprises.

For storing/retrieving values in byte[] arrays ByteBuffer is one way to go.

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

number to byte[] Askfor <askfor@nowhere.net> - 2015-10-17 10:02 +0200
  Re: number to byte[] Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-10-17 08:03 -0400
    Re: number to byte[] Askfor <askfor@nowhere.net> - 2015-10-17 23:03 +0200
      Re: number to byte[] Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-10-17 17:45 -0400
        Re: number to byte[] Askfor <askfor@nowhere.net> - 2015-10-18 12:13 +0200
          Re: number to byte[] Askfor <askfor@nowhere.net> - 2015-10-18 12:44 +0200
            Re: number to byte[] Lew <lewbloch@gmail.com> - 2015-11-29 23:07 -0800
          Re: number to byte[] Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-10-18 08:40 -0400
      Re: number to byte[] Nigel Wade <nmw@ion.le.ac.uk> - 2015-10-19 10:43 +0100
        Re: number to byte[] Wayne <nospam@all.invalid> - 2015-10-20 00:45 -0400
        Re: number to byte[] Kevin McMurtrie <mcmurtrie@pixelmemory.us> - 2015-10-20 13:35 -0700
  Re: number to byte[] Lothar Kimmeringer <news200709@kimmeringer.de> - 2015-10-25 10:22 +0100

csiph-web