ArrayList

在数据为int时

数据不合规
c语言用return ERROR;或return -1;
java抛出异常,这个下标越界异常是内置好的了throw new IndexOutOfBoundsException();
常量用static final可以共用这独一份
contains()方法 return indexof(e) != -1
clear设置size为0
可以用while(n–>1)替换forfor(int i=0; i<n; i++)
以及while(n–>0)替换for(int i=0; i<n; i++)
垃圾回收:代码段结束后销毁局部变量,包括引用型变量,比如Person p=new Person() p消失,则回收给对象分配的内存空间,成员变量也跟着销毁
扩容可以申请更大内存空间,并用for循环或System.arraycopy()方法拷贝数组,并将原引用指向新数组,原数组由于没有被引用指向,会被回收,提醒垃圾回收System. gc()
Java扩容系数为1. 5,可以写成a+=a>>1,浮点运算耗时久

泛型

不用担心基本数据类型,可自动拆箱和装箱
泛型写Object,对象数组object[0]存对象地址,而不是一个个实际的对象数组,将object变量回收,则引用数组回收,然后对象回收
更改clear,原来size=0是数据依然存在但访问不到,为了更通用,仅仅不可访问是不够的,还要销毁原来的对象,因此要将引用数组的各个元素置为null。
遵循的原则为:能循环利用的留下,不能循环利用的销毁
两个对象相等与否可重写其中一个对象的equals方法,先上转型为形参Object object,再判断是否为空,再用instanceof判断是否属于本类的对象下转型为obj然后return this.某属性obj.某属性,否则不是同一类return false,
销毁前的遗言重写该对象的finalize()方法
Integer的equals方法比数值,Object比地址
可能向indexof传null,如果传进来为null则判断if(e
null),不为null使用e.equals()
null和{}是有区别的,后者是new Object[0]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值