java基础

来源:互联网 发布:环保监测数据 编辑:程序博客网 时间:2024/06/05 12:30
一、两个星号**用来匹配任意路径,一个星号*用来获取除路径风格符外的0个或多个字符。

如果使用"/",那么用一个就成了,比如:c:/hello/text.txt

如果使用“\”,那么就得需要进行转义了,比如:c:\\hello\\text.txt


二、enter键值13


三、list操作

Integer[] num = {5,8,3,9,1};
 Arrays.sort(num,Collections.reverseOrder());
       for(int i=0;i<num.length;i++){
           System.out.println(num[i]);
      }    

ist.add():添加数据 

list.remove():删除数据

Arrays.asList():指定大小的列

Collections.sort():按ASCII升序排序   

Collections.reverseOrder()和Collections.reverse():按ASCII降序排序,区别在于参数

list.addAll():添加()所有数据 

list.removeAll():删除()所有数据

list.retainAll():保留交集   

list.subList(size1, size2): 返回size1到size2之间的数据


将数组转成List问题,通常我们习惯这样写成:List<String> list = Arrays.asList("1","2");
于是我们这样就得到了一个list,但是这个List的实现类是java.util.Arrays.ArrayList这个类(而不是java.util.ArrayList)。剖析JDK源代码可以发现,java.util.Arrays.ArrayList(就是转换出来list)它是继承了java.util.AbstractList这个类。再来看看java.util.AbstractList类是啥样子的?可以发现

public E set(int index, E element)
public E set(int index, E element)
public E remove(int index)
public void add(int index, E element)  | public boolean add(E e)调用add(int index, E element)

以上方法的实现全部是抛出UnsupportedOperationException异常。
因此有Arrays.asList转换出来的List他其实是一个AbstractList,他可以像List一样访问,但是不可其做任何修改操作。这也说明了,为什么Arrays.asList出来的List,对其做add、remove操作为抛出UnsupportedOperationException异常,从JDK代码角度上,原因在此。换句话说,其实java.util.Arrays.ArrayList其实只是对数组做了一个装饰,可以看到里面的实现,E get(int index)、E set(int index, E element)等方法都是对数组的操作,他的目的只是提供了可以像访问List那样来访问数组而已。本质上其实还是一个数组。

原创粉丝点击