概述
No. 41 慎用重载
同样的remove方法set中也会自动对int对象装箱,但是list中却变成了对index的索引
package com.anialy.TestProj;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
public class App {
public static void main( String[] args ){
Set<Integer> set = new HashSet<Integer>();
List<Integer> list = new ArrayList<Integer>();
for(int i=-2; i<2; i++){
set.add(i);
list.add(i);
}
for(int i=0; i<2; i++){
set.remove(i);
list.remove(new Integer(i));
}
System.out.println(set);
System.out.println(list);
}
}
只有通过人为的装箱(装为Integer之后,才能够在list里remove)
No.42 慎用可变参数
可变参数方法的每次调用都会导致进行一次数组分配和初始化
eg.
package com.anialy.TestProj;
public class App {
private static int getSum(int... args){
int sum = 0;
for(int arg: args){
sum += arg;
}
return sum;
}
public static void main( String[] args ){
System.out.println(getSum(1,2,3,4));
}
}
package com.anialy.TestProj;
import java.util.Arrays;
public class App {
public static void main( String[] args ){
int[] digits = {1,2,3};
System.out.println(Arrays.asList(digits));
System.out.println(Arrays.toString(digits));
}
}
最后
以上就是兴奋路人为你收集整理的Effective Java 阅读笔记 第七章(方法)的全部内容,希望文章能够帮你解决Effective Java 阅读笔记 第七章(方法)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复