1

I'd like to implement the following function without using Guava's Bytes and Longs.

Do you know any solution in "plain" Java [8], without dependencies?

import com.google.common.primitives.Bytes;
import com.google.common.primitives.Longs;

public static byte[] toBytesFromString(String uuid) {
    UUID id = UUID.fromString(uuid);
    final Long msb = id.getMostSignificantBits();
    final Long lsb = id.getLeastSignificantBits();
    return Bytes.concat(Longs.toByteArray(msb), Longs.toByteArray(lsb));
}

Thanks, Costin

Costin
  • 2,699
  • 5
  • 25
  • 43
  • You can copy the code from guava into your own method (assuming your project is Apache 2 compatible). Code is here for `Longs::toByteArray` for example: http://docs.guava-libraries.googlecode.com/git/javadoc/src-html/com/google/common/primitives/Longs.html#line.265 – assylias Nov 24 '15 at 17:21

1 Answers1

2
  public static byte[] toBytesFromString(String uuid) {
    UUID id = UUID.fromString(uuid);
    final Long msb = id.getMostSignificantBits();
    final Long lsb = id.getLeastSignificantBits();

    return ByteBuffer.allocate(2 * Long.BYTES).putLong(msb).putLong(lsb).array();

  }
Costin
  • 2,699
  • 5
  • 25
  • 43