public final class BinaryStdOut extends Object
boolean, byte, char,
int, long, float, and double)
to sequences of bits and writing them to standard output.
Uses big-endian (most-significant byte first).
The client must flush() the output stream when finished writing bits.
The client should not intermix calls to BinaryStdOut with calls
to StdOut or System.out; otherwise unexpected behavior
will result.
| Modifier and Type | Method and Description |
|---|---|
static void |
close()
Flushes and closes standard output.
|
static void |
flush()
Flushes standard output, padding 0s if number of bits written so far
is not a multiple of 8.
|
static void |
main(String[] args)
Tests the methods in this class.
|
static void |
write(boolean x)
Writes the specified bit to standard output.
|
static void |
write(byte x)
Writes the 8-bit byte to standard output.
|
static void |
write(char x)
Writes the 8-bit char to standard output.
|
static void |
write(char x,
int r)
Writes the r-bit char to standard output.
|
static void |
write(double x)
Writes the 64-bit double to standard output.
|
static void |
write(float x)
Writes the 32-bit float to standard output.
|
static void |
write(int x)
Writes the 32-bit int to standard output.
|
static void |
write(int x,
int r)
Writes the r-bit int to standard output.
|
static void |
write(long x)
Writes the 64-bit long to standard output.
|
static void |
write(short x)
Writes the 16-bit int to standard output.
|
static void |
write(String s)
Writes the string of 8-bit characters to standard output.
|
static void |
write(String s,
int r)
Writes the string of r-bit characters to standard output.
|
public static void flush()
public static void close()
public static void write(boolean x)
x - the boolean to write.public static void write(byte x)
x - the byte to write.public static void write(int x)
x - the int to write.public static void write(int x,
int r)
x - the int to write.r - the number of relevant bits in the char.IllegalArgumentException - if r is not between 1 and 32.IllegalArgumentException - if x is not between 0 and 2r - 1.public static void write(double x)
x - the double to write.public static void write(long x)
x - the long to write.public static void write(float x)
x - the float to write.public static void write(short x)
x - the short to write.public static void write(char x)
x - the char to write.IllegalArgumentException - if x is not betwen 0 and 255.public static void write(char x,
int r)
x - the char to write.r - the number of relevant bits in the char.IllegalArgumentException - if r is not between 1 and 16.IllegalArgumentException - if x is not between 0 and 2r - 1.public static void write(String s)
s - the String to write.IllegalArgumentException - if any character in the string is not
between 0 and 255.public static void write(String s, int r)
s - the String to write.r - the number of relevants bits in each character.IllegalArgumentException - if r is not between 1 and 16.IllegalArgumentException - if any character in the string is not
between 0 and 2r - 1.public static void main(String[] args)
args - the command-line arguments