数据库水平切分介绍了基因法,这里分享一下用Java如何从id中收抽取基因。
public class Demo {
public static void main(String []args) {
int n = 1;
String j = binaryToDecimal(n);
System.out.println(j);
}
/**
* [ id 抽取基因 ]
* @param n [要抽取的id]
* @return [收取的基因]
*/
public static String binaryToDecimal(int n)
{
return String.format("%04d",Integer.valueOf(Integer.toBinaryString(n%16)));
}
}
说明:
- 参数必须是int。
- 返回类型为string。
- n%16:例如1%16=1。
- String s = Integer.toBinaryString(n) //将十进制数转成字符串,例如n=5 ,s = "101"。
- Integer.valueOf('1')。方法用于返回给定参数的原生 Number 对象值,参数可以是原生数据类型, String等。
- String.format()。方法用于创建格式化的字符串以及连接多个字符串对象。