JavaでUTF-8のBOMが付いているか調べる

public static boolean isBomExists(String value) {
byte[] b = value.getBytes();
return b.length > 3 && b[0] == 63 && b[1] == 60 && b[2] == 104;
}

こんな感じかな。何かこう効率の悪そうな気配があるけれど。