此为第一篇博客,不喜勿喷。
今天,回想自己写代码有一段时间了,公司也没有什么事,无意中翻开boss直聘,投了份简历,很快就让去面试,于是就去了,去了后,收获很多。
见了面试官,我还在想他要问我框架,我还在脑补滔滔不绝的给他说每一个框架的细节,他问我,你基础好吗?我说还行吧,那你说说数据基本类型吧,说说面向对象特性吧,说说有几种集合,每种集合的作用吧,很简单的问题,我被问题说蒙了,于是我当时就是想不起具体是哪八种?也忘记每种集合的具体作用了,只记得经常用的。或许一般项目中用不到,这是看一个人的代码的基础,总结一下,在认识它们一次。
八种基本数据类型,我认为可以分成三类:
第一类:整型 byte short int long double float 这些只能表示是一些数,它是有符号的,有正负
第二类:关系型(true/false) boolean 它的值就是true或者false
第三类:字符型 char 它表示的是一个字符,字符就是一个汉字,一个数,注意一点,它是无符号的
关于UUID,java自带的JDK提供的,大家都会说,UUID生成的是唯一的,不重复的,是吗?咱们来看看UUID是如何生成的吧!
UUID含义是通用唯一识别码 (Universally Unique Identifier),生成一个32位的字符串,这32位取得值为 0-9 或 a-f 范围内的一个十六进制的数字,如果这个生成的的UUID足够多,会不会有重复的,就像每年365天,总有人是同一天生日。
生成的格式是这样的,xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12),所以代码需要去做一下替换,把-替换为空,String uuid = UUID.randomUUID().toString().replaceAll("-", "");这是jdk自动生成的。但是我们看到苹果手机上的唯一标识符是不够32位的,还可以指定为数,有以下代码:
/**
* 获得指定数目的UUID
* @param number int 需要获得的UUID数量
* @return String[] UUID数组
*/
public static String[] getUUID(int number){
if(number < 1){
return null;
}
String[] retArray = new String[number];
for(int i=0;i<number;i++){
retArray[i] = getUUID();
}
return retArray;
}
/**
* 获得一个UUID
* @return String UUID
*/
public static String getUUID(){
String uuid = UUID.randomUUID().toString();
//去掉“-”符号
return uuid.replaceAll("-", "");
}