Java高级特性-笔记

上传人:豆浆 文档编号:24901418 上传时间:2017-12-08 格式:PDF 页数:16 大小:565.68KB
返回 下载 相关 举报
Java高级特性-笔记_第1页
第1页 / 共16页
Java高级特性-笔记_第2页
第2页 / 共16页
Java高级特性-笔记_第3页
第3页 / 共16页
Java高级特性-笔记_第4页
第4页 / 共16页
Java高级特性-笔记_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《Java高级特性-笔记》由会员分享,可在线阅读,更多相关《Java高级特性-笔记(16页珍藏版)》请在金锄头文库上搜索。

1、Java高级应用技术 一、集合框架 和泛型 . 1、 集合框架 . Collection接口存储一组 不唯一、无序 的对象 . List接口存储一组 不唯一、有序 的对象 . Set接口存储一组 唯一、无序 的对象 . Map接口存储一组键值对象 , 提供 key-value(k-v)的映射 . Iterator:迭代器 . Collections:工具类 .(提供了对集合进行排序、遍历等多种算法实现) 2、 List接口 . List接口的实现类 : ArrayList:实现了长度可变的数组 ,在内存中分配连续的空间 ,遍历元素和随机访问元素效率高 . *常用方法: LinkedList:采

2、用了链表存储方式 ,插入、删除元素是效率较高 . *常用方法: 3、 Set接口 . 存储 唯一、无序 的对象 . Set里面存放的是对象的引用 . Set使用对象的 equals()方法比较是否为同一对象 . Set接口的实现类 : HashSet. TreeSet. 4、迭代集合 . 增强型 for 迭代器 Iterator *获取 Iterator: Collection接口的 iterate()方法 . *Iterator的方法 : *boolean hasNext(): 判断是否存在另一个可访问的元素 . *Object next(): 返回要访问的下一个元素 . 5、 Map接口

3、. Map接口专门处理键值映射数据的存储,可以根据键实现对值的操作 . Map接口实现类 : HashMap. *常用方法 : 遍历 Map集合: *增强型 for *迭代器 Iterator 获得 Map键和值的方式: keySet() -Set 迭代这个 Set( Iterator) get(key) entrySet()-Set(Map.Entry) 增强型 for(或者 Iterator) getKey() getValue() 6、 泛型 . 将对象的类型作为参数指定到其他类或者方法上,从而保证类型转换的安全性和稳定性 . 典型的泛型集合 : ArrayList HashMap *表

4、示该泛型集合中的元素类型 . *泛型集合中的数据不再转换为 Object. 7、 Collections算法类 . Collections和 Cillection 不同 ,前者是集合的操作类 ,后者是集合接口 . Collections提供的常用静态方法 : sort();排序 binarySearch():查找 max()min():查找最大 最小值 Type implements Comparable 实现 Comparable接口 ; override compareTo() 重写 compareTo()方法 ; 二、 实用类 1、枚举( enum) :指由一组固定的常量组成的类型 .

5、【注】: 枚举类型的取值默认为 :public static final; 可以定义属性和方法 . 构造器必须是私有的 . 2、包装类 java.lang 包 包装类 基本类型 Boolean boolean Character char 构造方法 . 所有包装类都可将与之对应的基本数据类型作为参数,来构造它们的实例 . public Type( type value) 如: Integer i=new Integer(1); 除 Character类外,其他包装类可将一个字符串作为参数构造它们的实例 . public Type( String value) 如: Integer i=new

6、Integer(123); 【注】: *Number 类型 的构 造时, 参数 必须 能 转换为 相应 的数 字 ,不然NumberFormatException 异常 . *Boolean 类型构造 方法参数为 String 类型 时,若该字符串内容为 true(不考虑 大小写 )则 Boolean 对象表示 true,否则 全都是 false. *Value(): *Number包装类型转换为基本数据类型 .(Byte、 Short、 Integer、 Long、 Float、Double) *Boolean 包装类型转换为基本数据类型 . *Character包装类型转换为基本数据类型

7、(charValue(). toString():以字符串形式返回包装对象表示的基本类型数据 . valueOf():包装类型 *所有包装类 valueOf(type type) *包装类 valueOf(String s) -除 Character 之外 parse*():把字符串转换为相应的基本数据类型数据( Character除外) . 装箱: 基本 包 : 基本类型转换为包装类的对象 . 拆箱 : 包 -基本 : 包装类对象转换为基本类型的值 . 3、 Math类 .java.lang.Math *提供了常用的数学运算方法和两个静态常量 E(自然对数的底数) 和 PI(圆周率) . 4

8、、 Random类 .java.util.Random *random():0(包括) -1(不包括)之间的随机浮点数 *Random random=new Random(种子 ); random.nextInt();返回下一个伪随机数,整型的 . 5、操作字符串的实用类 5-1、 String字符串类 : length(): 确定字符串的 长度 ,返回字符串中的字符数 . equals():判断字符串的内容是否相 同 .返回 boolean类型的值 . equalsIgnoreCase():忽略大小写的比较字符串内容 . toLowerCase():转换 字符串中 为 英文字符为 小写 .

9、toUpperCase():转换 字符串中 为 英文字符为大 写 . equals()与 = 开始, equals()与 =作用一样 ; 比较两个字符串内存地址是否一致,是否为同一对象 . 后来,字符串类对 equals()方法进行了重写 ,equals()变成了比较两个字符串的内容是否相等 . 字符串连接 *使用” +” *使用 String类的 concat()方法 . 【 注 】: 字符串方法操作的(产生变化的方法:变大写、小写、连接、截取 .)变化都作用于字符串的副本,而不是本身 . 字符串常用的提取方法 . substring(int start):从 start(包含)开始截取 ,

10、截取到字符串的末尾 . substring(int start, int end):从 start(包含)开始截取 ,截取到 end(不包含)位置为止 . 字符串拆分 . split():对字符串进行拆分 ,结果作为 String返回 . 5-2、 StringBuffer类 :操作字符串 频繁修改字符串的操作,效率比 String 高 . 常用方法 : *toString():StringBuffer-String *StringBuffer s=new StringBuffer(content); :String-StringBuffer *append():追加 字符串 . *inser

11、t():在某个位置插入 字符串 . 5-3、 操作 日期 和时间 :java.util.Date 【例】:输出现在时间: /创建日期对象 Date date = new Date(); /定制日期格式 SimpleDateFormat formater = new SimpleDateFormat(yyyy- MM-dd HH:mm:ss); String now = formater.format(date); System.out.println(now); 补充: Calendar类 :抽象类 java.util.Calendar Calendar类提供一些方法和静态字段来操作日历 .

12、三、 输入 和 输出 处理 Java API:java.io.File类 1、 File类:文件的属性或操作 路径: / 常用 方法: 2、流 2-1:流 的概念 : *流是一组有序的数据序列 . *以先进先出方式发送信息的通道 . 2-2:流的 分类: *按数据方向分 : 输入流: InputStream、 Reader 输出流: OutputStream、 Writer *按数据类型分 : 字节流 :InputStream、 OutputStream 字符流 :Reader、 Writer 下图为常用的 IO 流 : 2-3:各种流的使用 (1)字节流 -输入流 : public abst

13、ract class InputStream *常用 方法: int read():从输入流中读取下一个字节,返回 0-255 之间的 int 值 .返回值代表着都出来的字节对应的整型数字 . int read(byte b):从输入流中读取一堆字节, 把这些字节存储在字节数组 b中。返回值代表着真实的读到的字节的个数( b的长度) . int read(byte b,int off,int len) : 从输入流中读取一堆字节,把这些字节存储在字节数组 b 中。 off 对应的是b开始存储字节的标识或下标(将读取的第一个字节存储在元素 boff 中)。len对应的是读到的字节的个数或长度 .

14、 void close();关闭此输入流并释放与此流有关的所有系统资源 . int available(;:可以从输入流中读取的字节数目 . long skip(long n;:跳过和放弃此输入流中的 n 个数据字节,该方法有可能失效 . void mark(int n);在此输入流中标记当前的位置 . void reset();将此流重新定位到对此输入流最后调用 mark 方法时的位置 . boolean markSupported();测试此输入流是否支持 mark和 reset 方法 . *其子类: FileInputStream 常用的构造方法 : *FileInputStream(F

15、ile file) *FileInputStream(String name) 使用 FileInputStream 读取文本文件步骤: a:引入相关类 . b:创建输入流对象 .( FileInputStream 对象) c:读取文本文件 .( read()) d:关闭流 . (2)字节流 -输出流 public abstract class OutputStream 常用方法 : void write(int c):将指定的字节写入此输出流 . void write(byte b):将 b.length 个字节从指定的字节数写入此输出流 . void write(byte b,int of

16、f,int len):将指定字节数组中从偏移量 off开始的 len 个字节写入此输出流 . void close():关闭此输出流并释放与此流有关的所有系统资源 . void flush(): 刷新此输出流并 强制把缓冲区的数据写到输出流中 . *其 子类 FileOutputStream 常用的构造方法 : *FileOutputStream (File file) *FileOutputStream(String name) *FileOutputStream(String name,boolean append) 使用 FileOutputStream 往文本文件中写数据步骤: a:引入相关类 b:创建输出流对象( FileOutputStream 对象

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号