Streams read and write bytes
The byte
data type is signed
Java always promotes bytes to ints before working on them individually.
Many of the methods in the stream classes return or accept as arguments ints in the range of an unsigned byte (0-255).