Code example for DataInput

Methods: readDouble, readFully, readInt

0
    out.write(bytes);
    out.writeDouble(weight);
  } 
   
  public void readFields(DataInput in) throws IOException {
    this.bytes = new byte[in.readInt()];
    in.readFully(this.bytes);
    weight = in.readDouble();
  } 
   
  // Comparable 
   
  public int compareTo(Key other) {
    int result = this.bytes.length - other.getBytes().length;
    for (int i = 0; result == 0 && i < bytes.length; i++) {
      result = this.bytes[i] - other.bytes[i];
    } 
     
    if (result == 0) {
      result = Double.valueOf(this.weight - other.weight).intValue();
    }