`
文章列表
一、BufferedWriter   将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入。  可以指定缓冲区的大小,或者接受默认的大小。在大多数情况下,默认值就足够大了。  该类提供了 newLine() 方法,它使用平台自己的行分隔符概念,此概念由系统属性 line.separator 定义。 并非所有平台都使用新行符 ('\n') 来终止各行。 因此调用此方法来终止每个输出行要优于直接写入新行符。  通常 Writer 将其输出立即发送到底层字符或字节流。 除非要求提示输出,否则建议用 BufferedWriter 包装所有其 write() ...
一、Reader   用于读取字符流的抽象类。 子类必须实现的方法只有 read(char[], int, int) 和 close()。 但是,多数子类将重写此处定义的一些方法,以提供更高的效率和/或其他功能 直接已知子类:  BufferedReader, CharArrayReader, FilterReader, InputStreamReader, PipedReader, StringReader    public abstract class Reader implements Readable, Closeable { /** *读取单个字符 ...
一、IO(Input Output)流   IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的对象都在IO包中 流按操作数据分为两种:字节流和字符流 流按流向分为:输入流和输出流 二、IO流常用基类   字节流的抽象基类:InputStream OutputStream 字符流的抽象基类:Reader Writer 注:由这四个类派生出来的子类名称都是以其父类名作为子类名的后缀。 如:InputStream 的子类FileInputStream  Reader的子类FileReader 流的重要操作是读和写 读和写都会 ...
一、Date类   类 Date 表示特定的瞬间,精确到毫秒。  在 JDK 1.1 之前,类 Date 有两个其他的函数。 它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。 不过,这些函数的 API 不易于实现国际化。 从 JDK 1.1 开始,应该使用 Calendar 类实现日期和时间字段之间转换, 使用 DateFormat 类来格式化和解析日期字符串。 Date 中的相应方法已废弃。  public class Date implements Serializable, Cloneable, Comparable<Date ...
一、Runtime类   每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。 可以通过 getRuntime 方法获取当前运行时。 应用程序不能创建自己的 Runtime 类实例。 二、常用方法 public class Runtime { priva ...
一、System类   System是final类 构造函数是私有的,不能被实例化。 类中的方法和属性都是静态的。 在 System 类提供的设施中,有标准输入、标准输出和错误输出流; 对外部定义的属性和环境变量的访问; 加载文件和库的方法; 还有快速复制数组的一部分的实用方法。  二、常用属性和方法   public final class System { /* First thing---register the natives */ private static native void registerNatives(); s ...
一、静态导入     导入了类中的所有静态成员,简化静态成员的书写。 如:import static java.util.Collections.*;  //导入了Collections类中的所有静态成员 那么就可以直接使用其方法,而不用 Collections .方法了 But,当方法重名时,需要指定具体所属的对象或者类 当类名重名时,需要指定具体的包  
一、方法的可变参数   用到函数的参数上,当要操作的同一个类型元素个数不确定的时候,可是用这个方式,这个参数可以接受任意个数的同一类型的数据。 其实就是数组参数的简写形式 但是调用函数时不用每一次都手动的建立数组对象,只要将要操作的元素作为参数传递即可。 底层隐式将这些参数封装成了数组。 使用注意:可变参数一定要定义在参数列表最后面,否则编译失败 二、示例 /** *问题:求未知个数的整数的和 */ public class Test { public static void main(String[] args) { int sum1 = g ...
一、高级for循环   for(数据类型 变量名 : 被遍历的集合(Collection)或者数组) { //........ }   二、特点   用于对存储对象的容器进行迭代 传统for和高级for有什么区别? 高级for有一个局限性,必须要有被遍历的目标(Collection或数组) 如果遍历数组,还需要对数组元素进行操作,建议用传统for循环因为可以定义角标通过角标操作元素。 如果只为遍历获取,可以简化成高级for循环,它的出现为了简化书写。 对集合进行遍历,只能获取集合元素,但是不能对集合进行操作 迭代器除了遍历,还可以进行remove集合中元素的动 ...
一、Arrays   此类包含用来操作数组(比如排序和搜索)的各种方法。 除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出 NullPointerException。 二、常用方法 public class Arrays { //私有化构造函数,不能创 ...
一、Collections   该类不能创建对象 此类完全由在 collection 上进行操作或返回 collection 的静态方法组成。 它包含在 collection 上操作的多态算法,即“包装器”,包装器返回由指定 collection 支持的新 collection,以及少数其他内容。 如果为此类的方法所提供的 collection 或类对象为 null,则这些方法都将抛出 NullPointerException 二、常用方法   public class Collections { //构造函数私有化,不能创建对象 private Collect ...
/** * “sdfgzxcvasdfxcvdf”获取该字符串中的字母出现的次数。 * 希望打印结果:a(1)c(2) */ import java.util.*; class TreeMapDemo { public static void main(String[] args) { String str = "sdfgzxcvasdfxcfvdf"; TreeMap<Character,Integer> tm = new TreeMap<Character,Integer>(); tongJi( ...
一、Map映射   /** *java.util.Map<K,V> *K - 此映射所维护的键的类型 *V - 映射值的类型 *将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。 *Map 接口提供三种collection 视图,允许以键集、 ...
一、简介   在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”, “任意化”带来的缺点是要做显式的强制类型转换, 而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。 对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率。 二、泛型   泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 用于解决安全问题,是一个类型安全机制。 这种参数类型可以用在类、接口和方 ...
一、Set集合   public interface Set<E>extends Collection<E>{}   一个不包含重复元素的 collection。 更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。 Set集合的功能(方法)和Collection是一致的。 Set:元素是无序的(存入和取出的顺序不一定一致),元素不可以重复    |--HashSet:底层数据结构是哈希表,不同步    |--TreeSet:底层数据结构是二叉树,不同步 二、HashSet集 ...
Global site tag (gtag.js) - Google Analytics