1.System类
System类常用方法:
void exit(int status) |
终止当前正在运行的Java虚拟机。 |
long currentTimeMillis() |
返回当前时间的毫秒数,通常用于计时或性能分析。 |
void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) |
将数组中指定范围的元素复制到另一个数组中。 |
String getProperty(String key) |
获取与指定键对应的系统属性值。 |
void setProperty(String key, String value) |
设置与指定键对应的系统属性值。 |
void gc() |
运行垃圾回收器。 |
void runFinalization() |
强制运行已挂起的对象的终结器。 |
void load(String filename) |
加载包含指定文件名的动态链接库。 |
void loadLibrary(String libname) |
加载具有指定库名称的动态链接库。 |
void setIn(InputStream in) |
重新分配“标准”输入流。 |
void setOut(PrintStream out) |
重新分配“标准”输出流。 |
package Example1518; import java.util.Date; public class javaDemo { public static void main(String[] args) { // 获取当前的事件戳 Date date = new Date(System.currentTimeMillis()); System.out.println(date); int [] a = new int[]{1,2,3,4,5,6,7}; int [] b= new int[9]; // 数组复制 System.arraycopy(a,0,b,0,a.length); for (int i=0;i<b.length;i++){ System.out.print(b[i]); } // 垃圾回收机制 System.gc(); } }
编辑
2.Arrays数组操作类
常用方法:
方法 | 描述 |
void sort(T[] arr) |
对指定数组进行排序。 |
int binarySearch(T[] arr, T key) |
使用二分查找算法在指定数组中搜索指定元素,并返回索引位置。如果未找到元素,则返回负数。 |
boolean equals(T[] arr1, T[] arr2) |
比较两个数组是否相等,即两个数组中的元素是否相同。 |
void fill(T[] arr, T value) |
将指定值填充到数组的每个元素中。 |
void copyOf(T[] original, int newLength) |
复制指定数组的部分或全部元素到一个新数组中。 |
List<T> asList(T... arr) |
将指定数组转换为列表。 |
T[] toArray(List<T> list) |
将指定列表转换为数组。 |
int hashCode(T[] arr) |
返回指定数组的哈希码值。 |
String toString(T[] arr) |
返回指定数组的字符串表示形式。 |
void parallelSort(T[] arr) |
对指定数组进行并行排序。 |
int compare(T[] arr1, T[] arr2) |
比较两个数组的字典顺序。 |
void setAll(T[] arr, IntUnaryOperator generator) |
使用提供的生成器函数为指定数组的每个元素生成新值。 |
package Example1519; import java.util.Arrays; public class javaDemo { public static void main(String[] args) { int a[] = new int[]{1,2,4,8,2,3,12,44,3}; Arrays.sort(a); // 注意用二分法查找时候需要先对数组进行排序 System.out.println(Arrays.binarySearch(a,44)); System.out.println(Arrays.binarySearch(a,99)); System.out.println(Arrays.binarySearch(a,2)); // 输出a数组内容 System.out.println(Arrays.toString(a)); } }
编辑
3.定时调度
该类库可以实现延迟执行一个代码,或者是重复运行一个代码,每一个调度的任务都要继承TImerTask类,而每一个任务的启动都需要Timmer类才能启动
TimmerTask类实现了Runnable接口所以需要覆写run方法
TimerTask类的常用方法:
方法 | 描述 |
boolean cancel() |
取消任务的执行。如果任务已经在执行或已被取消,则返回false,否则返回true。 |
abstract void run() |
定义任务的具体逻辑,需要子类实现。当任务被调度执行时,run() 方法会被自动调用。 |
long scheduledExecutionTime() |
返回预定执行任务的时间。如果任务尚未安排执行,则返回0。 |
void scheduledExecutionTime(Date time) |
设置任务的预定执行时间为指定的时间。 |
boolean isScheduled() |
判断任务是否已经安排执行。如果任务已经安排执行,则返回true,否则返回false。 |
Timer类的常用方法:
void schedule(TimerTask task, long delay) |
安排在指定延迟之后执行指定的任务。任务只执行一次。 |
void schedule(TimerTask task, Date time) |
安排在指定时间执行指定的任务。任务只执行一次。 |
void schedule(TimerTask task, long delay, long period) |
安排在指定延迟之后开始执行指定的任务,并以指定的周期重复执行。 |
void schedule(TimerTask task, Date firstTime, long period) |
安排在指定时间开始执行指定的任务,并以指定的周期重复执行。 |
void scheduleAtFixedRate(TimerTask task, long delay, long period) |
安排在指定延迟之后开始执行指定的任务,并以固定的速率重复执行,不受任务执行时间的影响。 |
void scheduleAtFixedRate(TimerTask task, Date firstTime, long period) |
安排在指定时间开始执行指定的任务,并以固定的速率重复执行,不受任务执行时间的影响。 |
void cancel() |
终止该计时器,丢弃所有已安排的任务。 |
void purge() |
从计时器任务队列中移除所有已取消的任务。 |
int purgeCount() |
返回从计时器任务队列中移除的已取消任务的数量。 |
void schedule(TimerTask task, long delay, long period) |
安排在指定延迟之后开始执行指定的任务,并以指定的周期重复执行。 |
void schedule(TimerTask task, Date firstTime, long period) |
安排在指定时间开始执行指定的任务,并以指定的周期重复执行。 |
void scheduleAtFixedRate(TimerTask task, long delay, long period) |
安排在指定延迟之后开始执行指定的任务,并以固定的速率重复执行,不受任务执行时间的影响。 |
void scheduleAtFixedRate(TimerTask task, Date firstTime, long period) |
安排在指定时间开始执行指定的任务,并以固定的速率重复执行,不受任务执行时间的影响。 |
实现每秒更新当前时间并且延迟100ms后输出
package Example1520; import java.util.Date; import java.util.Timer; import java.util.TimerTask; class MyThread extends TimerTask { @Override public void run() { Date date =new Date(); System.out.println(date); } } public class javaDemo { public static void main(String[] args) { MyThread mytask = new MyThread(); Timer task = new Timer(); task.schedule(mytask,100,1000); } }
编辑
4.Base64加密与解密
核心函数 Base64.Encoder getEncoder(byte[])实现加密与Base64.Decoder getDecoder(byte[])实现解密
案例如下
package Example151; import java.nio.charset.StandardCharsets; import java.util.Base64; public class javaDemo { public static void main(String[] args) { // 原始内容 String str="公司机密:领导每天带着假发"; // 加密 String encode = new String(Base64.getEncoder().encode(str.getBytes(StandardCharsets.UTF_8))); System.out.println("密文为:"+encode); // 解密 String decode = new String(Base64.getDecoder().decode(encode)); System.out.println(decode); } }
编辑