包装类Java中一切都是对象,所以很多操作都是针对对象的,Java会把常用的数据类型,自动包装成相应的类的对象进行操作。常用的数据类型对应的包装类
装箱装箱就是把基本数据类型变为相应类的对象ArrayList list = new ArrayList();//list的各种操作都是针对对象的
list.add(5);//5本来是int类型的,现在自动包装成了Integer类的对象拆箱拆箱就是把相对...
分类:
编程语言 时间:
2015-05-10 17:25:52
阅读次数:
165
【示例代码】 1 using System; 2 //Point is a Value Type 3 internal struct Point { 4 private Int32 m_x, m_y; 5 6 public Point(Int32 x,Int32 y){ 7 ...
分类:
其他好文 时间:
2015-05-08 17:57:49
阅读次数:
113
为了提高代码的封装性及可读性,我把原来手懒搞的一些AsyncTask的继承内部类决定都单独拉到一个文件夹中,但这一拉,出事情了!
我的应用业务是,有一个min_question_id(int )来记录目前读取到的服务器端数据,原来是内部类的时候,用的好好的,这把它单独剥离出来,每次拉取数据却是从头拉取了!
好了,先上原来的代码!
public class getQuestionLi...
分类:
移动开发 时间:
2015-05-07 08:50:02
阅读次数:
166
【推荐】System.Collections.Generic.List【原因】泛型集合类List在操作值类型的集合时可以不进行 装箱/拆箱 处理。使得性能较ArrayList提高了相当大的程度。因为托管堆中需要创建的对象次数减少了,所以需要应用程序执行的垃圾回收次数也相应减少。除此之外,开发人员还获...
分类:
其他好文 时间:
2015-05-06 17:21:06
阅读次数:
138
【值类型在装箱过程中内部发生的事情】1.在托管堆中分配好内存。分配的内存量是值类型的各个字段需要的内存量加上托管堆的所有对象都有的两个额外成员(类型对象指针和同步快索引)需要的内存量。2.值类型的字段复制到新分配的堆内存。3.返回对象的地址。现在,这个地址是对一个对象的引用,值类型现在是一个引用类型...
其实,java在自动装箱和自动拆箱的过程里面,留了不少的坑给我们,我们下面将以integer这个类为基础讨论一下
其实这里面主要涉及的是两点
1.当使用Integer x=1,这样的方式来赋值的时候,其实,编译器当那个1是String,然后需要通过valueof的方法转换过来,但是在转换的过程中,他为了优化速度,使用了我们所不知道的缓存,因为在这里会出现一些坑
2.Integer类里面重写了...
分类:
编程语言 时间:
2015-05-05 08:50:20
阅读次数:
109
1、List泛型集合 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespac....
分类:
其他好文 时间:
2015-05-04 11:27:49
阅读次数:
146
1、绝对路径和相对路径 绝对路径:通过给定的这个路径直接能在我的电脑中找到这个文件。 相对路径:文件相对于应用程序的路径。 结论: 我们在开发中应该去尽量的使用相对路径。2、装箱、拆箱 装箱:就是将值类型转换为引用类型。 拆箱:将引用类型转换为值类型。 看两种类型是否发生了装箱或者拆箱,要看,这两种...
分类:
其他好文 时间:
2015-05-04 11:24:51
阅读次数:
102
字符串应该是所有编程语言中使用最频繁的一种基础数据类型。如果使用不慎,我们就会为一次字符串的操作所带来的额外性能开销而付出代价。本条建议将从两个方面来探讨如何规避这类性能开销: 1. 确保尽量少的装箱 2. 避免分配额外的内存空间。第一个方面:确保尽量少的装箱对于装拆箱,我们应该不陌生,值类型转换成...
先来看一段代码:public class Main{
public static void main(String[] args){ Integer num1 = 100;
Integer num2 = 100;
Integer num3 = 200;
Integer num4 = 200; '''//输出结果'''...
分类:
编程语言 时间:
2015-04-28 21:06:32
阅读次数:
181