1 개요[ | ]
- 자바 Util.uniqid()
Java
Copy
private static class Util {
private final static long currentTimeNanosOffset = (System.currentTimeMillis() * 1000000) - System.nanoTime();
public static long currentTimeNanos() {
return System.nanoTime() + currentTimeNanosOffset;
}
public static String uniqid() {
long nanos = Util.currentTimeNanos();
return Long.toHexString(Long.parseLong(String.valueOf(nanos).substring(0,10)))
+ Long.toHexString(Long.parseLong(String.valueOf(nanos).substring(10,16)));
}
public static String uniqid(String prefix) {
return prefix + "_" + Util.uniqid();
}
}
Java
Copy
System.out.println( Util.uniqid() );
System.out.println( Util.uniqid() );
System.out.println( Util.uniqid("hello") );
System.out.println( Util.uniqid("hello") );
// 58eddeabe0db9
// 58eddeabe0f60
// hello_58eddeabe0f96
// hello_58eddeabe0fc2
2 전체 예제[ | ]
Java
Copy
public class HelloApplication {
private static class Util {
private final static long currentTimeNanosOffset = (System.currentTimeMillis() * 1000000) - System.nanoTime();
public static long currentTimeNanos() {
return System.nanoTime() + currentTimeNanosOffset;
}
public static String uniqid() {
long nanos = Util.currentTimeNanos();
return Long.toHexString(Long.parseLong(String.valueOf(nanos).substring(0,10)))
+ Long.toHexString(Long.parseLong(String.valueOf(nanos).substring(10,16)));
}
public static String uniqid(String prefix) {
return prefix + "_" + Util.uniqid();
}
}
public static void main(String[] args) {
System.out.println( Util.uniqid() );
System.out.println( Util.uniqid() );
System.out.println( Util.uniqid("hello") );
System.out.println( Util.uniqid("hello") );
// 58eddeabe0db9
// 58eddeabe0f60
// hello_58eddeabe0f96
// hello_58eddeabe0fc2
}
}
3 같이 보기[ | ]
편집자 Jmnote
로그인하시면 댓글을 쓸 수 있습니다.