常用类归纳
(一)Object类:根类,所有对象(包括数组)都实现这个类的方法
成员方法:
1.int hashCode():返回该对象的哈希码值
2.Class<?> getClass():返回此 Object 的运行时类
3.String toString():返回该对象的字符串表示
注:建议所有子类重写该方法,来显示当前类成员变量
4.boolean equals(Object obj):某个对象是否与此对象“相等”
注:默认比较的是地址值,建议所有子类重写该方法来比较具体内容
5.protected Object clone():创建并返回此对象的一个副本
注:此对象的类不能实现接口 Cloneable,则会抛出 CloneNotSupportedException
(二)Class类
成员方法:
1.String getName():以 String 的形式返回此 Class 对象所表示的实体(接口,类,数组...)名称
(三)Scanner类:一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器
构造方法:
1.Scanner(InputStream source):构造一个新的 Scanner
,它生成的值是从指定的输入流扫描的
System.in:标准"输入流"
System.out:标准"输出流"
成员方法:
1.XXX nextXXX():将输入信息的下一个标记扫描为一个XXX类型
2.boolean hasNextXXX():判断录入的数据下一个是否是XXX这类型的数据
注:录入int类型数据之后,下个标记String会录入回车符号,应在录入String数据之前,再重新创建一个Scanner对象
(四)String类
构造方法:
1.String() :初始化一个新创建的 String
对象,使其表示一个空字符序列
2.String(byte[] bytes):将字节数组抓换成字符串
3.String(byte[] bytes, int offset, int length):将字节数组的一部分转换字符串
4.String(char[] value) :将字符数组转换成字符串
5.String(char[] value, int offset, int length):将字符数组的一部分转换字符串
6.String(String original):创建一个字符串对象来传递字符串常量
成员方法:
1.int length():获取字符串长度
2.boolean equals(Object anObject) :比较两个字符串的内容是否相同
3.boolean equalsIgnoreCase(String anotherString):比较内容是否相同,忽略大小写
4.boolean contains(String s):判断大字符串中是否包含一个子字符串
5.boolean startsWith(String prefix):判断字符串是以...开头
6.boolean endsWith(String suffix):判断字符串是以...结尾
7.boolean isEmpty() :判断字符串是否为空
8.char charAt(int index):获取指定索引处的字符
9.int indexOf(int ch):获取指定字符在此字符串中第一次出现的索引
10.int indexOf(String str):获取子字符串在此字符串中第一次出现的索引
11.int lastIndexOf(int ch):返回指定字符在此字符串中最后一次出现处的索引
12.String substring(int beginIndex):从指定位置开始截取,默认截取到末尾
13.String substring(int beginIndex, int endIndex):从指定位置开始截取,截取到指定位置结束(包前不包后)
14.byte[] getBytes():将字符串转换成字节数组
15.char[] toCharArray():将字符串转换为字符数组
16.valueOf(XXX 变量名):可以将XXX类型转换为String类型
16.String toLowerCase():将字符串转换小写
17.String toUpperCase():将字符串转换成大写
18.String replace(char oldChar, char newChar):用指定的字符替换以前的字符
19.String replace(String oldString, String newString):用指定的子字符串替换以前的子字符串
20.String trim():去除两端空格
21.String concat(String str):将指定字符串连接到此字符串的结尾
(五)StringBuffer类:线程安全的可变字符序列
构造方法:
1.StringBuffer():构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符
2.StringBuffer(int capacity):指定容量大小
3.StringBuffer(String str):构造一个字符串缓冲区:里面的容量大小:字符串长度+16
成员方法:
1.StringBuffer append(XXX x):将指定的内容追加(末尾追加)到字符串缓冲区中
2.StringBuffer insert(int index,XXX x):在指定位置处,插入一个新的内容
3.StringBuffer deleteCharAt(int index) :删除指定位置出的字符
4.StringBuffer delete(int start, int end) :删除从指定位置开始到指定位置结束(包前不包后)
5.StringBuffer replace(int start,int end,String str):从指定位置开始到指定位置结束,用给定字符串替换指定的字符内容(包前不包后)
6.String substring(int start):从指定位置默认截取到末尾
7.String substring(int start,int end):从指定位置开始截取到指定位置结束(包前不包后)
8.StringBuffer reverse():字符序列反转
(六)Math类
成员变量:
1.static double E:自然底数
2.static double PI:圆周率
成员方法
1.static int abs(int a) :取绝对值
2.static double ceil(double a):向上取整
3.static double floor(double a):向下取整
4.static int max(int a,int b):获取最大值
5.static int min(int a, int b):获取最小值
6.static double pow(double a,double b):获取a的b次幂
7.static double random():获取随机数,该值大于等于 0.0 且小于 1.0。
8.static int round(float a):四舍五入
9.static double sqrt(double a):获取正平方根
(七)Random类
构造方法
1.Random():没有给定种子,使用的是默认的(当前系统的毫秒值)
2.Random(long seed):给定一个long类型的种子,给定以后每一次生成的随机数是相同的
成员方法
1.XXX nextXXX():没有参数,表示的随机数范围是XXX类型的范围
2.int nextInt(int n):可以指定一个随机数范围,包括0,不包括n
(八)System类
成员方法:
1.static void gc():开启垃圾回收器
2.static void exit(int status):退出jvm
3.static void arraycopy(Object src, int srcPos,Object dest,int destPos, int length):从指定源数组中的某个位置开始复制,复制目标数组中的某个位置,指定长度
4.static long currentTimeMillis():返回以毫秒为单位的当前时间
(九)Date类:表示日期格式,精确到毫秒
构造方法:
1.Date():获取当前的系统时间:以Date格式来表现的
2.Date(long date):分配Date对象并初始化此对象,表示自从标准基准时间(1970年1月1日00:00:00 GMT)以来的指定毫秒数
成员方法:
1.long getTime():返回自1970年1月1日00:00:00 GMT 以来此 Date 对象表示的毫秒数
2.void setTime(long time):设置此 Date
对象,以表示 970年1月1日 00:00:00 GMT以后time
毫秒的时间点
(十)SimpleDateFormat类:是DateFormat(抽象类)的子类
构造方法:
1.SimpleDateFormat(String pattern):参数表示: pattern:当前日期使用哪一种模式:开发者规定xxxx年xx月 xx日 xx时 x分x秒
成员方法:
1.String format(Date date):将一个Date类型数据转化成String类型(格式化)
2.Date parse(String source):将一个String类型数据转化成Date类型(解析)
(十一)Calendar类
成员方法:
1.static void add(int field,int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量
2.void set(int year,int month,int date):设置日历字段 YEAR
、MONTH
和 DAY_OF_MONTH
的值
3.static Calendar getInstance():使用默认时区和语言环境获得一个日历对象
4.int get(int field):获得给定日历字段对应的值 field通过
(十二)Arrays类
成员方法:
1.static String toString(int[] a):返回指定数组内容的字符串表示形式
2.static void sort(int[] a):对数组按数字升序进行排序
3.static <T> void sort(T[] a, Comparator<? super T> c):根据指定比较器产生的顺序对指定对象数组进行排序
4.static int binarySearch(int[] a,int key):使用二分搜索法来搜索指定数组,以获得指定的值
(十三)包装类(Integer为例)
JDK1.5 后新特性:自动拆装箱
自动装箱:把基本数据类型自动转成对应的包装类型
自动拆箱:把包装类型自动转成他对应的基本数据类型
基本类型对应的包装类型:
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
成员变量:
1.static int MAX_VALUE:它表示 int 类型能够表示的最大值
2.static int MIN_VALUE:它表示 int 类型能够表示的最小值
构造方法:
1.Integer(int value):构造一个新分配的 Integer
对象,它表示指定的 int
值
2.Integer(String s):构造一个新分配的 Integer
对象,它表示 String
参数所指示的 int
值
成员方法:
1.static int parseInt(String s):将字符串数字转换为int数字
2.int intValue():以 int 类型返回该 Integer 的值
3.boolean equals(Object obj):比较此对象与指定对象
注:Integer类中重写了此方法,比较内容是否相等
4.static String toBinaryString(int i):以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式
5.static String toHexString(int i):以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式
6.static String toOctalString(int i):以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式
7.String toString():返回一个表示该 Integer 值的 String 对象
排序
1.冒泡排序
原理:相邻元素两两比较,大的往后放,第一次完毕后最大值出现在了最大索引处
代码:
运行结果:
2.选择排序
原理:从0索引开始,依次和后面元素比较,小的往前放,第一次完毕,最小值出现在了最小索引处
代码:
运行结果:
正则表达式:正确规则的表达式
Pattern(模式器):用来封装正则表达式
Matcher(匹配器):用来匹配正则表达式
Pattern(模式器)成员方法:
1.static boolean matches(String regex, CharSequence input):编译给定正则表达式并尝试将给定输入与其匹配
2.String[] split(CharSequence input):围绕此模式的匹配拆分给定输入序列
Matcher(匹配器)成员方法:
1.boolean find():尝试查找与该模式匹配的输入序列的下一个子序列
2.String group():返回由以前匹配操作所匹配的输入子序列
代码1:
运行结果:
代码2:
运行结果: