记录最近遇到的两个小问题
2016-04-30 17:00
204 查看
前几天在项目中遇到的两个小问题,说是问题,其实是非常基础的知识。再一次暴露了基础不扎实的漏洞
1、Long型比较大小
相信大家都清楚Long和long的区别,
long存储在堆栈,Long存储在堆中;
long不是面向对象的,Long是面向对象的;
包装类型的好处:方便涉及到对象的操作,包含了基本数据类型的相关属性和相关操作方法。
因为Long型数据是一个对象,所以不能通过“==”的方式来比较大小。
如果使用“==”比较两个Long类型,实际比较的是两个对象的内存地址,也就是比较两个对象是否是同一个对象。这种方法很少用到,但是如果应用巧妙也会省时省力。
比较两个Long对象值的大小的方法有两种:
①、
②、
2、Base64和字符串转换
将String转换为Base64:
将Base64转换为String:
1、Long型比较大小
相信大家都清楚Long和long的区别,
long是基本数据类型,而
Long是包装类型。
long存储在堆栈,Long存储在堆中;
long不是面向对象的,Long是面向对象的;
包装类型的好处:方便涉及到对象的操作,包含了基本数据类型的相关属性和相关操作方法。
因为Long型数据是一个对象,所以不能通过“==”的方式来比较大小。
如果使用“==”比较两个Long类型,实际比较的是两个对象的内存地址,也就是比较两个对象是否是同一个对象。这种方法很少用到,但是如果应用巧妙也会省时省力。
比较两个Long对象值的大小的方法有两种:
①、
boolean boolean = new Long(3).equals(new Long(3));
②、
boolean boolean = (new Long(3).longValue() == new Long(3).longValue())
2、Base64和字符串转换
将String转换为Base64:
byte[] stringToBytes = Base64.decode(string, Base64.DEFAULT);
将Base64转换为String:
ByteArrayOutputStream bos = new ByteArrayOutputStream(); ObjectOutputStream os = new ObjectOutputStream(bos); os.writeObject(obj); String bytesToHexString = new String(Base64.encode(bos.toByteArray(), Base64.DEFAULT));
相关文章推荐
- nyoj_71 独木舟上的旅行
- redis数据类型
- 【小笨鸟看JDK1.7集合源码之四】Vector源码剖析
- 机器学习----Softmax回归
- hdu_2608_0 or 1_数论
- ListView和数据适配器SimpleAdapter例子
- hdu_2608_0 or 1_数论
- python使用zlib实现压缩与解压字符串
- CODEVS 3023 魔法禁书目录1:追捕大妈
- 正向代理与反向代理
- 《UNIX环境高级编程》(进程环境)
- error C4996: 'pcl::SAC_SAMPLE_SIZE': PCL1.8问题汇总
- Java循环练习:已知s=1×2×3×…×n,计算出s不大于5000时n的最大值
- 2.ubuntu 配置目录
- 【自考总结】 操作系统概论
- java学习-字符串2.
- 1026. 程序运行时间(15)
- 英语的五种基本句型
- poj1698二分图多重匹配
- Android 发布项目到 jcenter 遇到的坑