System类
保存系统相关的重要函数和变量。System类中的所有成员都是静态的。
静态变量:System.out:标准输出流(输出至控制台)。In标准输入流(从键盘输入)。err标准错误流。
静态方法:exit(int status)提前终止虚拟机的运行。如果正常退出,参数为0.如果异常退出,一般选择-1.
currentTimeMillis()返回系统时间。距离1970年的Long型。
getProperties()获得当前虚拟机的环境属性。Properties是HashTable的子类,存储键值对,这里正好存储属性名和属性的值。
setProperties()设置属性的值。
使用方法如下:
package collectionTest;
import java.util.*;
public class SystemTest {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.setProperty("wo de ", "什么情况");//设置系统变量
Properties prop = System.getProperties();//得到所有系统属性。
Set<Object> keySet = prop.keySet();
for(Iterator<Object> it = keySet.iterator();it.hasNext();)//遍历取出打印。
{
System.out.println(it.next());
}
System.out.println(System.getProperty("os.name"));//获得当前的操作系统名称
}
}
Runtime类
每一个应用程序都有一个Runtime实例,是应用程序能够与运行环境相连接。我们不能够自己创建Runtime类,但是能够getRuntime()方法获得正在运行Runtime对象的引用。
使用exec(参数)方法启动一个新的进程,参数可以是具体的命令。
该方法返回一个Process对象的引用。
import java.io.IOException;
import java.lang.*;
public class RuntimeTest {
/**
* @param args
* @throws InterruptedException
*/
public static void main(String[] args) throws IOException, InterruptedException{
// TODO Auto-generated method stub
Runtime r = Runtime.getRuntime();//得到当前Runtime对象的引用
Process p = r.exec("C:\\winmine.exe");//启动扫雷软件,并将启动的进城的引用赋值给p
Thread.sleep(5000);//系统休眠5秒
p.destroy();//杀死扫雷进城。
Runtime.getRuntime().exec("notepad.exe RuntimeTest.java");//调用记事本打开RuntimeTest.java文件。
}
}
Date类与SimpleDateFormat类
Date类用于表示日期和时间。使用构造方法Date(),以当前的系统时间来创建一个Date类对象。Date类中的大多说方法已经过时,并没Calendar类中的方法所取代。
SimpleDateFormat类是DateFormat类的实现类。DateFormat类是一个抽象类。
其使用方法如下:
import java.util.*;
import java.text.*;
public class DateTest {
public static void main(String[] args) {
Date d = new Date();//以当前系统时间创建Date对象。
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日EE");//使用xxxx年xx月xx日的格式来输出日期
String time = sdf.format(d);//将格式用于d
System.out.println(time);
}
}
Calendar类
Date类的取代类,Calendar类中的许多方法取代了Date类。但是,Calendar类也是一个抽象类,不能直接创建对象,但是可以使用Calendar的静态方法getInstance()或者其子类GreorianCalendar来创建对象。
查表法打印当前时间:
import java.util.Calendar;
public class CalendarTest {
public static void main(String[] args) {
System.out.println(getDaysOfFeb(2012));
//printCalendar();
}
public static void printCalendar()//查表发打印当期时间
{
String [] mons ={"一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"};//月份表
String[] dayOfWeek = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};//星期表
Calendar cal = Calendar.getInstance();//以当前时间获取Calendar实例
System.out.println(cal.get(Calendar.YEAR)+"年"+mons[cal.get(Calendar.MONTH)]+
"月"+Calendar.DAY_OF_MONTH+"日"+dayOfWeek[cal.get(Calendar.DAY_OF_WEEK)]);//打印日期
cal.add(Calendar.YEAR, 1);//通过add方法来实现日期的更换
System.out.println(cal.get(Calendar.YEAR)+"年"+mons[cal.get(Calendar.MONTH)]+
"月"+Calendar.DAY_OF_MONTH+"日"+dayOfWeek[cal.get(Calendar.DAY_OF_WEEK)]);//打印日期
}
public static int getDaysOfFeb(int year){
Calendar cal = Calendar.getInstance();
cal.set(year,2,1);//将时间设置为year年的二月一号
cal.add(Calendar.DAY_OF_MONTH, -1);//将日期减去1,就得到二月的最后一天,也就是二月的天数。
System.out.println(cal.get(Calendar.MONTH));
return cal.get(Calendar.DAY_OF_MONTH);
}
}
Math类
Math类处于java.lang包中,提供了用于数学运算的方法。
1、 两个静态字段
Public staticfinal PI=3.14….圆周率
Public staticfinal E=2.71…自然对数
2、 方法
abs(参数)返回参数的绝对值
max(参数1,参数2)返回两个数的最大值
min(参数1,参数2)返回两个数的最小值
random()产生0-1之间的double类型的随机数
round(参数)返回四舍五入的整数
ceil(参数)向上取整floor(参数)向下取整
sqrt(参数)平方根
pow(参数1,参数2)参数1的参数2次幂。
sin()cos()tan()三角函数的计算。
Random类
该类提供了一系列产生随机数的方法:
nextInt() 返回一个大于零的整数
nextInt(int n)返回一个大于零小于n的整数
nextBoolean()返回一个boolean类型的随机数
nextDouble() nextFloat()