Java基础类库使用
来源:互联网 发布:淘宝网淋浴塑料帘布 编辑:程序博客网 时间:2024/06/16 22:19
1.Scanner 类
例:Scanner sc = new Scanner(System.in);sc.useDelimiter("\n"); // 把回车当作分隔符,Scanner 使用空白符作为分隔符;hasNextXxx(); 是否还有下一个输入项,判断字符串,直接使用 hasNext()nextXxx(); 获取下一个输入项;行读取boolean hasNextLine(); 返回输入源是否还有下一行;String nextLine(); 返回输入源中下一行的字符串;读取文件输入Scanner sc = new Scanner(new File("ScannerFileTest.java"));
2.System 类
类变量:标准输入,标准输入,错误输出;类方法:访问环境变量,系统属性(native 方法),加载文件和动态链接库;System.getenv(); 获取系统环境变量System.getProperties(); 获取所有系统属性System.getProperty(); 获取特定属性;System.currentTimeMillis(); 获取当前时间:毫秒System.nanoTime(); 获取当前时间:纳秒System.identityHashCode(Object x)方法 返回指定对象的精确 hashCode 值
3.Runtime 类
getRuntime(); 获取与之关联的 Runtime 对象;load(String filename); 加载文件;loadLibrary(String libname); 加载动态链接库;
4.Object 类
boolean equals(Object obj) 判断指定对象与该对象是否相等;protected void finalize() 清理资源;Class<?> getClass() 返回该对象的运行时类;int hashCode() 返回该对象的 hashCode 值;String toString() 返回该对象的字符串表示;wait(),notify(),notifyAll() 控制线程的暂停和运行;clone() 帮助对象实现自我克隆; 1.自定义类实现 Cloneable 接口;接口里无任何方法; 2.自定义类实现自己的 clone() 方法; 3.实现 clone() 方法时通过 super.clone();调用 Object 实现的 clone() 方法来得到该对象的副本,并返回该副本; 只克隆所有成员变量值,不会对引用类型的成员变量值所引用的对象进行克隆;Objects 工具类 空指针安全
5.String StringBuffer StringBuilder 类
String 类是不可变类;StringBuffer 对象代表一个字符序列可变的字符串;StringBuilder 性能略高;String 类 1.String(); 0 个字符串 2.String(char[] value, int offset, int count); 将指定的字符数组从 offset 开始,长度为 count 的字符元素连缀成字符串; 3.String(String original); 根据字符串直接量创建对象; 4.String(StringBuffer buffer); 5.String(StringBuilder buider); 6.char charAt(int index); 获取字符串中指定位置; 0~length()-1; 7.int compareTo(String anotherString); 相等返回 0,不同返回 字符差,长度差; 8.String concat(String str); + 9.boolean contentEquals(StringBuffer sb); 进行比较,包含字符序列相同返回 true; 10.static String copyValueOf(char[] data); 将字符数组连缀成字符串; 11.static String copyValueOf(char[] data, int offset, int count); 12.boolean endsWith(String suffix); 返回该 String 对象是否以 suffix 结尾; 13.boolean equals(Object obj); 14.boolean equalsIgnoreCase(String str); 忽略字符大小写; 15.void getChar(int srcBegin, int srcLast, char[] dst, int disBegin); 16.int indexOf(int ch); ch字符在该字符串中第一次出现的位置; 17.int indexOf(int ch, int fromIndex); ch字符在该字符串中从 fromIndex 第一次出现的位置; 18.int indexOf(String str); 19.int indexOf(String str, int fromIndex); 20.int lastIndexOf(int ch); ch字符在该字符串中最后一次出现的位置; 21.int lastIndexOf(int ch, int fromIndex); ch字符在该字符串中从 fromIndex 最后一次出现的位置; 22.int lastIndexOf(String str); 23.int lastIndexOf(String str, int fromIndex); 24.int length(); 返回当前字符串长度; 25.String replace(char oldChar, char newChar); 将字符串第一个 oldChar 替换为 newChar; 26.boolean startsWith(String prefix); 该 String 对象是否以 prefix 开始; 27.boolean startsWith(String prefix, int toffset); 该 String 对象从 toffset 算起是否以 prefix 开始; 28.String substring(int beginIndex); 获取从 beginIndex 位置开始到结束的子字符串; 29.String substring(int beginIndex, int endIndex); 获取从 beginIndex 位置开始到 endIndex 的子字符串; 30.char[] toCharArray(); 将 String 对象转换成 char 数组; 31.String toLowerCase(); 将字符串转换成小写; 32.String toUpperCase(); 将字符串转换成大写; 33.static String valueOf(X x); 将基本类型转换为 String 对象;
6.Math 类
类变量: PI 和 E类方法:三角运算: toDegrees(); 弧度转角度; toRadians(); 角度转弧度; acos(); 反余弦; asin(); 反正弦; atan(); 反正切; cos(); 三角余弦; cosh(); 双曲余弦; sin(); 正弦; sinh(); 双曲正弦; tan(); 三角正切; tanh(); 双曲正切; atan2(); 转极坐标;取整运算: floor(); 小于目标数的最大整数; ceil(); 大于目标数的最小整数; round(); 四舍五入取整;乘方,开方,指数运算: sqrt(); 平方根; cbrt(); 立方根; exp(); e的n次幂; hypot(); sqrt(x2+y2); pow(); 计算乘方; log(); 乘方; log10(); 自然对数;符号相关: abs(); 绝对值; copySign(); 返回带有第二个浮点数符号的第一个浮点数参数; signum();大小相关: max(); min(); random(); 伪随机数,0~1;
7.Random 类 ThreadLocalRandom
Random 构造器: 默认种子; 显式传入 long 型整数种子; Random rand = new Random(); rand.nextXxx(); 推荐: Random rand = new Random(System.currentTimeMillis());ThreadLocalRandom ThreadLocalRandom rand = ThreadLocalRandom.current();
8.BigDecimal 类
BigDecimal(String val); 优先使用;BigDecimal.valueOf(double value); add(); +subtract(); -multipy(); *divide(); /pow();
9.Data 类
Data();Data(long data);long getTime();void setTime(long time);
10.Calendar 类
抽象类
子类 GregorianCalendar 类;静态 getInstance() 方法,TimeZone,Locale 类获取实例;与 Data 转换:Calendar calendar = Calendar.getInstance();Data data = calendar.getTime();calendar.setTime(data);方法: field 是类变量,Calendar.YEAR Calendar.MONTH.... void add(int field, int amount); 能进位,修正 int get(int field); int getActualMaximun(int field); 返回指定日历字段拥有的最大值; int getActualMinimun(int field); 返回指定日历字段拥有的最小值; void roll(int field, int amount); 不能进位,修正 void set(int field, int value); void set(int year, int month, int data); void set(int year, int month, int data, int hour, int minute, int second); 关闭容错性: setLenient(false);
11.正则表达式
合法字符: x \0mnn \xhh \uhhhh \t \n \r \f \a \e \cx特殊字符: $ 匹配一行结尾; ^ 匹配一行开头; () 标记子表达式开始结束位置; [] 中括号表达式开始结束位置; {} 标记前面子表达式的出现频度; * 指定前面子表达式可以出现零次或多次; + 指定前面子表达式可以出现一次或多次; ? 指定前面子表达式可以出现零次或一次; . 匹配除换行符 \n 之外任何单字符; \ 转义下一个字符; | 指定两项之间任选一项;预定义字符:(通配符) . 匹配任何字符; \d 匹配 0~9 数字; \D 匹配非数字; \s 匹配空白符; \S 匹配非空白符; \w 匹配单词字符; \W 匹配非单词字符;方括号表达式: 枚举 [abc] 范围 - [a-f] 求否 ^ [^abc] 与运算 && [a-z&&[def]] 并运算 [a-d[m-p]] 中文字符 [\\u0041-\\u0056]圆括号表达式: (|) 边界匹配符: ^ 行的开头; $ 行的结尾; \b 单词的边界; \B 非单词的边界; \A 输入的开头; \G 前一个匹配的结尾; \Z 输入的结尾;仅用于最后的结束符; \z 输入的结尾;数量标识符: 贪婪模式(Greedy) 勉强模式(Reluctant) 占用模式(Possessive) X? X?? X?? X 表达式出现零次或一次; X* X*? X*? X 表达式出现零次或多次; X+ X+? X+? X 表达式出现一次或多次; X{n} X{n}? X{n}? X 表达式出现n次; X{n,} X{n,}? X{n,}? X 表达式最少出现n次; X{n,m} X{n,m}? X{n,m}? X 表达式最少出现n次,最多出现m次;使用正则表达式: Pattern 和 Matcher 多个 Matcher 对象可共享一个 Pattern 对象; Pattern p = Pattern.compile("a*b"); Matcher m = p.matcher("aaaab"); boolean b = m.matches(); boolean b = Pattern.matches("a*b", "aaaab"); Matcher 方法: find() 返回目标字符串中是否包含与 Pattern 匹配的字串; group() 返回上一次与 Pattern 匹配的子串; start() 返回上一次与 Pattern 匹配的子串在目标字符串中的开始位置; end() 返回上一次与 Pattern 匹配的子串在目标字符串中的开始位置+1; lookingAt() 返回目标字符串前面部分与 Pattern 是否匹配; matches() 返回整个目标字符串与 Pattern 是否匹配; reset() 将现有 Matcher 对象应用于一个新的字符序列;
0 0
- Java基础类库使用
- Java中基础类库使用
- JAVA基础类库——使用Scanner获取键盘输入
- 【java基础】JSTL标签库的使用
- Java 基础操作库 hoe 使用介绍
- Java网络编程基础 ServerSocket类使用
- java国际化基础及工具类使用
- netbeans创建JAVA类基础使用
- java基础Runtime类的使用
- java基础—Runtime类使用
- java基础之RandomAccessFile类的使用
- java 基础 使用 Math 类操作数据
- Java基础类库
- Java基础类库
- java基础类库
- java基础类库
- Java基础类库
- java基础类库
- 浅谈C++多态性
- Linux常用命令
- C++ 数字翻转(九度OJ 1089)
- OpenCV XML和YAML文件的写入和读取
- c++(重载、覆盖、隐藏)
- Java基础类库使用
- Unix网络编程读书笔记(三)
- #47 Majority Number II
- 面试算法题目
- pat_BL_1017
- 关于Android软键盘弹出的问题
- Android中的动画效果
- 字符设备驱动
- UVALive4287 强联通分量新模版