### Question:
HbaseSchemaUtils { public static Types.MinorType inferType(byte[] value) { String strVal = Bytes.toString(value); try { Long.valueOf(strVal); return Types.MinorType.BIGINT; } catch (RuntimeException ex) { } try { Double.valueOf(strVal); return Types.MinorType.FLOAT8; } catch (RuntimeException ex) { } return Types.MinorType.VARCHAR; } private  HbaseSchemaUtils(); static Schema inferSchema(HBaseConnection client, TableName tableName, int numToScan); static String getQualifiedTableName(TableName tableName); static org.apache.hadoop.hbase.TableName getQualifiedTable(TableName tableName); static Types.MinorType inferType(byte[] value); static Object coerceType(boolean isNative, ArrowType type, byte[] value); static String[] extractColumnParts(String glueColumnName); static byte[] toBytes(boolean isNative, Object value);  }### Answer:
@Test public void inferType() { assertEquals(Types.MinorType.BIGINT, HbaseSchemaUtils.inferType("1".getBytes())); assertEquals(Types.MinorType.BIGINT, HbaseSchemaUtils.inferType("1000".getBytes())); assertEquals(Types.MinorType.BIGINT, HbaseSchemaUtils.inferType("-1".getBytes())); assertEquals(Types.MinorType.FLOAT8, HbaseSchemaUtils.inferType("1.0".getBytes())); assertEquals(Types.MinorType.FLOAT8, HbaseSchemaUtils.inferType(".01".getBytes())); assertEquals(Types.MinorType.FLOAT8, HbaseSchemaUtils.inferType("-.01".getBytes())); assertEquals(Types.MinorType.VARCHAR, HbaseSchemaUtils.inferType("BDFKD".getBytes())); assertEquals(Types.MinorType.VARCHAR, HbaseSchemaUtils.inferType("".getBytes())); }