标签:new 区别 加载 static 因此 exception code 私有 operation
1、方法签名
指的是方法名和参数类型
2、java类初始化数据的方法
3、List转数组
List<String> list = new ArrayList<>();
list.add("aa");
list.add("bb");
String[] array = new String[list.size()];
array = list.toArray(array);
4、数组转List
这不是最好的,因为asList()返回的列表的大小是固定的。事实上,返回的列表不是 java.util.ArrayList,而是定义在java.util.Arrays中一个私有静态类。我们知道ArrayList的实现本质上是一个数组,而asList()返回的列表是由原始数组支持的固定大小的列表。这种情况下,如果添加或删除列表中的元素,程序会抛出异常UnsupportedOperationException。
List<element> list = new ArrayList<element>(array.length);
Collections.addAll(list, array);
5、java安全删除list中的元素
for (Iterator<AccountParam> iterator = accountParams.iterator(); iterator.hasNext();) { boolean validateResult = this.beforInsertRecordValidate(iterator.next()); if (!validateResult)
{ iterator.remove(); } } Iterator iterator = accountParams.iterator(); while (iterator.hasNext()) { boolean validateResult = this.beforInsertRecordValidate(iterator.next()); }
6、在静态方法中new 一个内部类对象和new 一个外部类对象的区别
因此,只能在类的成员方法中定义内部类(常用),或者用:{类的对象}.new {内部类}(),来定义内部内。
7、关于static{}
在程序的一次执行过程中,static{}语句块中的内容只被执行一次,因为在虚拟机的生命周期中一个类只被加载一次;又因为static{}是伴随类加载执行的,所以,不管你new多少次对象实 例,static{}都只执行一次。
8、类加载的含义
第一次创建对象要加载类.
1 @Override
2 public int compareTo(User o) {
3 int i = this.getAge() - o.getAge();//先按照年龄排序
4 if(i == 0){
5 return this.score - o.getScore();//如果年龄相等了再用分数进行排序
6 }
7 return i;
}
1 Collections.sort(students, new Comparator<Students>() { 2 @Override 3 public int compare(Students o1, Students o2) { 4 int i = o1.getScore() - o2.getScore(); 5 if(i == 0){ 6 return o1.getAge() - o2.getAge(); 7 } 8 return i; 9 }
}
标签:new 区别 加载 static 因此 exception code 私有 operation
原文地址:https://www.cnblogs.com/ft535535/p/9603541.html