× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Re: primitive byte --> unsigned byte...best way?
  • From: lwloen@xxxxxxxxxx
  • Date: Thu, 16 Nov 2000 02:23:09 -0600
  • Importance: Normal

|September 22, 2000) at
  11/16/2000 02:23:13 AM
MIME-Version: 1.0
Content-type: text/plain; charset=us-ascii
Sender: owner-java400-l@midrange.com
Precedence: bulk
Reply-To: JAVA400-L@midrange.com


What you probably want is an UnsignedByteArray class whose essence is
something like this:

class UnsignedByteArray {

   byte array[];

   UnsignedByteArray(byte inputArray[]) { array = inputArray; }

    // fetch from the apparent unsigned byte array at arrayIndex into a
signed integer
    public int byteAt(int arrayIndex) {
         return   ( array[arrayIndex]>0 ?  array[arrayIndex] :
128+array[arrayIndex]);
    }

   // place the low order byte of the integer value back into the array at
arrayIndex
   public void setByte(int arrayIndex,int value) {
     byte source = (byte) value;
     array[arrayIndex] = source;
   }

}

If you aren't familiar with the ? and : operation of Java, you could
express byteAt
with:

   int res=0;
   if (array[arrayIndex]>0) res = array[arrayIndex];
   else res = array[arrayIndex] + 128;
   return res;

Because you are dealing with an array of bytes, "byte order" problems
don't arise.

They don't arise in general in Java anyway; Java's definitions are very
careful to preserve the illusion that it runs on a big endian virtual
machine.



Larry W. Loen  -   Senior Java and AS/400 Performance Analyst
                           Dept HP4, Rochester MN

+---
| This is the JAVA/400 Mailing List!
| To submit a new message, send your mail to JAVA400-L@midrange.com.
| To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
| To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: joe@zappie.net
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.