编辑文章 - 博客频道 - CSDN.NET

来源:互联网 发布:阿里妈妈淘宝客赚钱 编辑:程序博客网 时间:2024/05/24 05:18

代码点(Unicode) &  代码单元 

普通常用字符用一个代码单元就可以表示,一些辅助的字符要用二个代码单元来表示。
比如说字符串a= "m马li" 用length()返回的长度就是代码单元的个数,由于"马"需要两个代码单元,所以返回5,那么实际的代码点长度又是多少呢,根据目测知道是4,怎样得到代码点的个数呢?a.codePointCount(0,length()),a.charAt(0)将返回第一个代码单元,也就是m,但是a.charAt(1)显然返回的就不是"马"了,他返回的是"马"的第一个数码单元,也就是字符串a的第二个代码单元,那么想遍历一个字符串,用a.charAt(i)的方式显然不可取,就要用到以下方法:
int cp = a.codePointAt(i);//返回指定代码点的字符
if(Character.isSupplementaryCodePoint(cp))//判断所在代码点是否处于增补状态
  i+=2;
else i++;

时间输出格式

SimpleDateFormat fmt=new SimpleDateFormat("HH:mm");//24
fmt=new SimpleDateFormat("hh:mm aa");//12
   public String toString(){
        return fmt.format(Ftime.getTime());
        }
这样就可以控制24还是12小时输出了

万能的进制转换——BigInteger

BigInteger src1 = new BigInteger(str, 2);//转换为BigInteger类型 
System.out.print("The equivalent decimal number for binary "+str+" is ");
System.out.println(src1.toString());//转换为十进制 

0 0
原创粉丝点击