黑马程序员——java基础之易忘点总结(四)
来源:互联网 发布:淘宝为什么下载不了 编辑:程序博客网 时间:2024/04/30 23:51
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
Map
|--Hashtable:不可以存入null键null值。该集合是线程同步的。jdk1.0.效率低。
|--HashMap:允许使用 null 值和 null 键,该集合是不同步的。将hashtable替代
|--TreeMap:线程不同步。可以用于给map集合中的键进行排序。
Map和Set很像!
Map集合的put方法会返回被覆盖的值,如果放入的值没有会返回null;
Remove方法会返回删除的键。
对象.values()获取map集合所有键的值
map集合的两种取出方式:
1,Set<k> keySet:将map中所有的键存入到Set集合。因为set具备迭代器。
可以用迭代方式取出所有的键,再根据get方法。获取每一个键对应的值。
2,Set<Map.Entry<k,v>>entrySet:将map集合中的映射关系存入到了set集合中,
而这个关系的数据类型就是:Map.Entry
Entry其实就是Map中的一个static内部接口。
接口无构造方法!
Map --- entrySet或keySet --->Set
Collection----Collections.toArray --->Array
Array ---- Arrays.asList --->List 将数组变成集合,不可以使用集合的增删方法。因为数组的长度是固定。
如果数组中的元素都是对象。那么变成集合时,数组中的元素就直接转成集合中的元素。
如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在。
Arrays和Collections等工具类,里面定义的都是静态方法!
Collections.reverseOrder(比较器 );强行逆转比较器
Collections.shuffle(集合):将集合中的元素进行随机洗牌!
Collections.replaceAll(list,"aaa","pp");把list集合中的aaa全部替换成pp
Collections.reverse(集合):将集合元素反转;
Collections.fill(list,"pp");使用指定元素替换指定列表中的所有元素。
1,指定类型的数组到底要定义多长呢?
当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组。长度为集合的size。
当指定类型的数组长度大于了集合的size,就不会新创建了数组。而是使用传递进来的数组。所以创建一个刚刚好的数组最优。
2,为什么要将集合变数组?
为了限定对元素的操作。不需要进行增删了。
show(String str,int... arr)
方法的可变参数。注意:可变参数一定要定义在参数列表最后面。
Calendar c = Calendar.getInstance();
System.currentTimeMillis();返回以毫秒为单位的当前时间long型
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日Ehh:mm:ss");
sdf.format(new Date);模板格式Date对象
new Random() 创建一个新的随机数生成器
.nextInt(int a)随机生成0—a的伪随机数
传递一个true参数,代表不覆盖已有的文件。并在已有文件的末尾处进行数据续写。
FileWriterfw = new FileWriter("demo.txt",true);
Math.pow(double a,double b):返回a的b次方。
Math.round(double a):返回最接近参数的long型。
Math.ceil(16.34);返回大于指定数据的最小整数。
Math.floor(12.34);返回小于指定数据的最大整数。
Runtime类使用了单例设计模式。
Runtime r = Runtime.getRuntime();
Process p = r.exec("notepad.exe a.java");用记事本打开a.java文件
System:类中的方法和属性都是静态的。
Properties prop = System.getProperties();获取系统属性信息
Properties是Hashtable的子类,也就是Map的子类。集合中存储都是字符串。没有泛型定义。
setProperty("mykey","myvalue");自定义属性
getProperty("os.name");获取指定属性信息
newLine();缓冲区中提供了一个跨平台的换行符。
装饰设计模式:对已有的对象进行功能增强,可以定义类,将已有对象传入。
键盘录入:
BufferedReader bufr =
newBufferedReader(new InputStreamReader(System.in));
System.in字节流对象用InputStreamReader(此为转换流)转换为字符流
字符编码转换时,需要用到转换流。
File类常见方法:
1,创建。
boolean createNewFile():在指定位置创建文件,如果该文件已经存在,则不创建。
和输出流不一样,输出流对象一建立创建文件。而且文件已
经存在,会覆盖。
booleanmkdir():创建文件夹。
boolean mkdirs():创建多级文件夹。
2,删除。
booleandelete():删除失败返回false。如果文件正在被使用,则删除不了返回falsel。
voiddeleteOnExit();在程序退出时删除指定文件。
3,判断。
booleanexists() :文件是否存在.
isFile():
isDirectory();测试此抽象路径名表示的文件是否是一个目录。
isHidden();测试此抽象路径名指定的文件是否是一个隐藏文件。
isAbsolute();测试此抽象路径名是否为绝对路径名。
4,获取信息。
getName():
getPath():将此抽象路径名转换为一个路径名字符串。
getParent():返回此抽象路径名父目录的路径名字符串;如果获取的是相对路径,返回
null。如果相对路径中有上一层目录那么该目录就是返回结果。
getAbsolutePath()返回此抽象路径名的绝对路径名字符串。
longlastModified() 返回此抽象路径名表示的文件最后一次被修改的时间。
long length() 返回由此抽象路径名表示的文件的长度。
list()
返回一个字符串数组,此目录中的文件和文件夹。
listFiles()
返回一个文件数组,此目录中的文件夹。
length
()
文件的长度。
listFiles(
FilenameFilter filter)
实现接口覆盖其方法,进行过滤!
返回一个文件数组,
此目录中的文件夹和文件。
- 黑马程序员——java基础之易忘点总结(四)
- 黑马程序员——java基础之薄弱点总结(四)
- 黑马程序员——Java基础---基础语法(四)
- 黑马程序员——java基础之易忘点总结(一)
- 黑马程序员——java基础之易忘点总结(二)
- 黑马程序员——java基础之易忘点总结(三)
- 黑马程序员——java基础之易忘点总结(五)
- 黑马程序员—java基础之异常总结
- 黑马程序员——Java语言基础(四)
- 黑马程序员——Java基础学习笔记(四)
- 黑马程序员——Java基础--集合(四)
- 黑马程序员——Java基础--IO(四)
- 黑马程序员——Java基础(四)之方法、数组
- 黑马程序员——黑马学习日志之四 Java基础——数组
- 黑马程序员-----java基础四(之封装特性)
- 黑马程序员——java基础总结
- 黑马程序员——JAVA基础总结
- 黑马程序员—JAVA基础总结
- Java EE 7 教程 第一部分 简介 第1章 概述 第1.4节 Java EE 容器
- easyui 在IE9不兼容问题的临时解决方案
- 图片的水印
- ADO SQL学习
- usb接口速度
- 黑马程序员——java基础之易忘点总结(四)
- 什么是shell 是不是什么时候都可以使用shell
- Android布局技巧——合并布局 merge标签
- 第15周-两个二阶二维矩阵相乘
- log4cplus使用
- C#的FileInfo类介绍
- CSS的块元素、内联元素和可变元素有哪些?
- YARN(Hadoop)学习笔记(4)
- 第十五周项目3(1)OJ上玩指针