您的位置:首页 > 其它

常用类

2018-01-02 16:55 169 查看
1.Math类

Math类提供了一序列基本数学运算和集合函数的方法。

注意:Math类是final类,并且它的所有成员变量和成员方法都是静态的(即可以通过类名调用)

静态变量:PI:圆周率的double值

静态方法:



2.Random类

Random类的对象可以生成”伪随机数“

常用方法:

public int nextInt(int bound):返回0到(bound-1)的一个”伪随机“整数值

public boolean nextBoolean():返回一个”伪随机“的boolean值

3.System类

System类内部包含in、out和err三个成员变量,in代表标准输入流(键盘输入),out标准输出流(显示器)和标准错误输出流(显示器)。

out输出与err输出的区别:标准输出往往是带缓存的,而标准错误输出没有缓存

例如:

public class Err {
public static void main(String[] args){
System.out.println("123");
System.out.println("abc");
System.err.println("标准错误输出");

}

}


输出结果:







如上结果所示,运行结果不唯一,原因是:System.out.println输出有缓存,System.err.println是立即输出,所以可能在第一个或者第二个还没有输出换行时就输出第三个。

System类的成员方法:

1)public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)

参数解释:

src:源数组

srcPos:源数组的起始位置

dest:目标数组

destPos:目标数组的起始位置

length:拷贝的数组元素的个数

2)public static void exit(int status)

该方法是退出程序,其中status的值为0代表正常退出,非零代表异常退出。

3)public static void gc()

该方法的作用是请求系统进行垃圾回收。至于是否立即回收,则取决于系统中垃圾回收算法的实现以及系统执行时的情况,垃圾回收时会先调用finalize()方法释放非Java资源

注意:gc()与finalize()

gc()只能清除在堆上分配的内存(纯Java语言的所有对象都在堆上使用new分配内存),而不能清除栈上分配的内存(例如:当Java调用c或c++程序时,使用malloc分配的内存)。这时如果某些对象被分配了栈上的内存,gc()是无法释放这些内存的,对于这样的对象进行内存回收就要靠finalize()了,但要注意的是,即使程序员显式的调用gc也不一定会触发垃圾回收,垃圾回收一般只在内存不够用的时候才触发。

4)public static void currentTimeMillis()

该方法的作用是以毫米为单位返回从1970年1月1日午夜到当前时间的毫秒数

4)RunTime类

使应用程序与其运行的环境相关联,通过使用getRuntime()静态方法获得实例。

public Process exec(String command) throws IOException

在单独的进程中执行指定的字符串命令,该方法返回Process对象,使用Process对象的destroy()方法可以杀掉进程
例如:
import java.io.IOException;
import java.util.Scanner;

public class RuntimeDemo {

public static void main(String[] args) {
Runtime rt= Runtime.getRuntime();
rt.gc();    // 显式请求JVM进行垃圾回收gc
System.out.println("当前JVM的内存总量是:"+rt.totalMemory()+"字节");
System.out.println("JVM试图使用的最大内存量:"+rt.maxMemory());
System.out.println("当前JVM的空闲内存量:"+rt.freeMemory());
try {
rt.exec("notepad"); //打开记事本
rt.exec("calc");   //打开计算器
Process qq=rt.exec("F:\\Program Files (x86)\\Tencent\\QQ\\Bin\\QQ.exe");   // 打开QQ进程
Scanner scan=new Scanner(System.in);
System.out.print("要关闭QQ吗?y/n");
String choice=scan.next();
if("y".equals(choice)){
qq.destroy();   // 销毁进程
}
} catch (IOException e) {
e.printStackTrace();
}
}

}

注意:如果要打开的本地操作系统的应用,则直接通过名称打开(rt.exec("notepad"); //打开记事本),但如果是应用程序的话需要通过安装路径打开此进程(不是快捷方式的路径)。
5)Data类:表示日期和时间
[b]   SimpleDateFormat类:用于定制日期时间的格式[/b]
[b]

[/b]
6)Calendar类:抽象类,用于获取时间/日期数据的特定部分<
4000
/div>
Calendar类提供一些方法和静态字段来操作日期
import java.util.Calendar;

public class CalendarDemo {

public static void main(String[] args) {
Calendar cal=Calendar.getInstance();
System.out.println("第几个月:"+(cal.get(Calendar.MONTH)+1));
System.out.println("当前月的第几天:"+cal.get(Calendar.DAY_OF_MONTH));
System.out.println("星期几:"+cal.get(Calendar.DAY_OF_WEEK));
System.out.println("今年的第几天:"+cal.get(Calendar.DAY_OF_YEAR));
System.out.println("*******************************");
cal.set(1937, 6, 7);   // 调整日历set(year,month,date),注意,月是从0开始算的
System.out.println("第几个月:"+(cal.get(Calendar.MONTH)+1));
System.out.println("当前月的第几天:"+cal.get(Calendar.DAY_OF_MONTH));
System.out.println("星期几:"+cal.get(Calendar.DAY_OF_WEEK));
System.out.println("今年的第几天:"+cal.get(Calendar.DAY_OF_YEAR));
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  常用类 date System类