public interface Writable
extends java.io.Serializable
DataInput and DataOutput.
Any key or value type in the Hadoop Map-Reduce
framework implements this interface.
Implementations typically implement a static read(DataInput)
method which constructs a new instance, calls readFields(DataInput)
and returns the instance.
Example:
public class MyWritable implements Writable {
// Some data
private int counter;
private long timestamp;
public void write(DataOutput out) throws IOException {
out.writeInt(counter);
out.writeLong(timestamp);
}
public void readFields(DataInput in) throws IOException {
counter = in.readInt();
timestamp = in.readLong();
}
public static MyWritable read(DataInput in) throws IOException {
MyWritable w = new MyWritable();
w.readFields(in);
return w;
}
}
| Modifier and Type | Method and Description |
|---|---|
void |
readFields(java.io.DataInput in)
Deserialize the fields of this object from
in. |
double |
toDouble()
Convert Writable to double.
|
float |
toFloat()
Convert Writable to float.
|
int |
toInt()
Convert Writable to int.
|
long |
toLong()
Convert Writable to long.
|
void |
write(java.io.DataOutput out)
Serialize the fields of this object to
out. |
void write(java.io.DataOutput out)
throws java.io.IOException
out.out - DataOuput to serialize this object into.java.io.IOExceptionvoid readFields(java.io.DataInput in)
throws java.io.IOException
in.
For efficiency, implementations should attempt to re-use storage in the existing object where possible.
in - DataInput to deseriablize this object from.java.io.IOExceptiondouble toDouble()
float toFloat()
int toInt()
long toLong()