Java基础中的类中的常用方法,及其他使用。

1).Arrays
sort(数组名):自然排序
sort(数组名,comparator):定制排序
binarySearch(数组名,待查找的元素):查找元素是否存在,没有返回-1
copyof(旧数组,新数组的长度):复制数组
toString(数组):对元素进行拼接,返回字符串
equals(数组1,数组2): 比较两个数组的元素内容是否相等
alList(Object…objs):将一组元素存储在一个集合中,并返回
fill(数组名,元素): 将指定元素填充到数组的每个位置上
2).Collections
reverse():反转
shuffle():随机打乱顺序
sort():自然排序/定制排序
swap():交换两个元素
replaceAll():替换两个元素
frequency():获取某个元素出现的次数
max():获取集合的最大值
min():获取集合的最小值
copy():赋值集合的元素

3).包装类
int = Integer
char = Character
long = Long
short = Short
boolean = Boolean
double = Double
float = Float
byte = Byte

4).String类
length():获取字符串的长度
equals():比较两个字符串是否完全相等,严格区分大小写
intern():先去判断常量池中是否有该对象,如果有,这直接返回,如果没有,则创建后并返回
split():按指定分隔符分割字符
trim():去前后空格
concat(): 拼接字符串
contains():判断某指定字符串是否存在
format():格式化字符串
charAt():获取指定索引处字符
compareTo():比较两个字符串大小
subString():获取子串/截取子串
indexOf():获取某指定字符或字符串第一次出现的索引,没有返回-1
lastIndexOf():获取某指定字符或字符串最后一次出现的索引,没有返回-1
startsWith():判断是否以某字符串开头
toUpperCase:转换成大写
toLowerCase():转换成小写
equalsIgnoreCase():忽略大小写判断内容是否相等
endsWith():判断是否以XX结尾
toString():转换成字符串
toCharArray():转换成字符数组
replace():替换字符串
valueOf():将其他任意类型转换成字符串
5).StringBuffer类
append(): 拼接
delete(): 删除
insert(): 删除
replace():替换
indexOf():查找
length(): 长度
reverse():反转
6).StringBuilder类
append(): 拼接
delete(): 删除
insert(): 删除
replace():替换
indexOf():查找
length(): 长度
reverse():反转
*-------------------*StringBuffer与StringBuilder
效率 线程安全
StringBuffer 低 安全
StringBuilder 高 不安全

7).Math类
round():四舍五入
random():随机数
ceil():向上取整
floor():向下取整
abs():绝对值
min():最小值
max():最大值
pow():求幂
sqrt():求开方
8).System类
gc():运行垃圾回收器
exit():程序退出
arrayCopy():复制数组
currentTimeMills:获取当前系统时间距离1970-1-1 00:00:00的毫秒差
9).BigInteger类
add():加
subtract():减
multiply():乘
divide():除
max():最大值
min():最小值
10).BigDecimal类
add():加
subtract():减
multiply():乘
divide():除
max():最大值
min():最小值
11).List集合
add():添加
addAll():批量添加
remove():删除
removeAll():批量删除
contains():查找元素是否存在
size():获取元素的个数
isEmpty():判断元素是否为空
clear():清除
iterator():获取迭代器
12).Map集合
put(key,value):添加
putAll(map):批量添加
remove(key):删除
vlear():清除
get(key):根据键获取值
size():获取实际的键值对个数
containsKey(key):查找键是否存在
containsValue(value):查找值是否存在
isEmpty():判断是否为空
keySet():获取所有的键
values():获取所有的值
entrySet():获取所有的关系
13).File类
mkdir():创建一级目录
mkdirs():创建多级目录
createNewFile():创建文件
delete():删除空目录或文件
exists():判断文件或目录是否存在
ifFile():判断是否是文件
isDirectory():判断是否是目录
isHidden():判断是否隐藏
getName():获取文件或目录 名
length():获取文件大小
getPath()/getAbsolutePath():获取文件或目录的路径/绝对路径
list():列出子级,返回String[]
listFile():列出子级,返回File[]
14).I/O流
InputStream
FileInputStream
BufferedInputStream
ObjectInputStream
OutputStream
FileOutputStream
BufferedOutputStream
ObjectOutputStream
Reader
FileReader
BufferedReader
Writer
FileWriter
BufferedWriter
方法:
read(): Input流使用
write():Output流使用
close():关闭流
15).打印流
printStream
printWriter
16).标准输入输出流
System.in
System.out
System.err
17).转换流
InputStreamReader:
OutputStreamReader:
18).反射
1.获取class类对象
方式一:通过已知类名
Class c = 类名.class;
方式二:通过类对象
Class c = 对象名.getclass();
方式三:通过全类名
Class c = class.forname(“全类名”);
方式四:不推荐使用
Class c = classLoader.loadClass(“全类名”);
2.通过反射创建类的对象
方式一:通过调用无参构造器
Object o = c.newInstance();
方式二:通过调用有参构造器
Constructor con = c.getDeclaredConstructor(参数类型.class,参数类型.class,参数类型.class…);
con.setAccessible(true);//爆破解除修饰符权限(private…)
Object o = con.newInstance(Object…值);
3.通过反射获取类的成员
1).属性
方式一: Field[] fields = c.getFields();
方式二: Field[] fields = c.getDeclaredFields();
2).方法
方式一: Method[] mothods = c.getMethods();
方式二: Method[] mothods = c.getDeclaredMethods();
3).构造器
方式一: Constructor[] cons = c.getConstructors();
方式二: Constructor[] cons = c.getDeclaredConstructors();
4).获取包
Package pack = c.getPackage();
5).父类
class superClass = c.getSuperClass();
6).接口
Class[] inters = c.getInterfaces();
7).获取注解
Annotation[] anns = c.getAnnotations();
注: 只能获取保留在运行期间Runtime的注解
8).类名
方式一: String name = c.getSimpleName();
方式二: String name = c.getName();
4.通过反射调用类的成员
1).属性
Object o = c.newInstance();
Field field = c.getDeclaredField(属性名);
field.setAccesible(true);
field.set(0,值)
Object value = field.get(0);
注: 如果属性为static,则0可以写成null
2).方法
Object o = c.newInstance();
Method method = c.getDeclaredMethod(方法名,参数类型列表);
method.setAccessible(true);
Object value = method.invoke(0,对应的参数列表的值);
5.通过反射获取类的加载器
c.getClassLoader():获取类加载器
c.getClassLoader().getResourceAsstream(String): 通过类加载器调用该方法,获取指定的路径文件
19).多线程
1.线程创建并启动
方式一: class 类名 extends Thread{
public void run(){任务体}
}
启动 类名 a = new 类名();
a.start();
方式二: class 类名 implements Runnable{
public void run(){任务体}
}
启动 new Thread(new 类名()).start();

	2.方法
		setName()/getName():设置/获取 线程对象的名称
		setPriority()/getPriority(): 设置/获取 优先级
		currentThread(): 获取当前线程对象
	
		sleep():让当前线程休眠指定毫秒数
		Interrupt():中断线程,并没有真正的结束线程,仅仅只做了中断标记
			当中断sleep/wait/join,会出现异常
	
		yield():线程的礼让
		join():线程的插队
		setDeamon():设置守护线程
	3.同步代码(上锁)
		方式一: 同步代码块
			synchronized(锁对象){需要上锁的代码}
		方式二: 同步方法
			public synchronized 返回类型 方法名(参数列表){需要上锁的代码块}
		注: 普通方法锁对象: this
	    		静态方法锁对象: 当前类.class
	4.线程的通信
		方法:(注:一下都是Object类的方法)
			wait():
				语法: 对象.wait()
				对象为锁对象,让当前线程等待,当被唤醒后,将从断点处继续往下执行
			notify():
				唤醒当前锁对象下正在等待的单个线程。如果有多个线程等待,则随机唤醒一个(优先级高,优先被唤												醒)
			notifyAll():
				唤醒当前锁对象下所有正在等待的线程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值