《java基础课程-常用工具类.ppt》由会员分享,可在线阅读,更多相关《java基础课程-常用工具类.ppt(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、常用工具类包装类Math日期类DateCalenderSimpleDateFormatArraysRandomSystem和Runtime.int num1=5;Integer num=new Integer(num1);int num2=num.intValue();.int digit=10;原始数据类型原始数据类型使用原始数据类型声明的变量视为对象视为对象原始数据类型包装类Java.lang 提供原始数据类型包装类byte(字节)(字节)Byte char(字符)(字符)Character int(整型)(整型)Integerlong(长整型)(长整型)Long float(浮点型)(浮
2、点型)Floatdouble(双精度)(双精度)Double boolean(布尔)(布尔)Booleanshort(短整型)(短整型)Short 方法说明isDigit()确定字符是否为确定字符是否为 0 至至 9 之间的数字之间的数字isLetter()确定字符是否为字母确定字符是否为字母isLowerCase()确定字符是否为小写形式确定字符是否为小写形式isUpperCase()确定字符是否为大写形式确定字符是否为大写形式isSpace()确定字符是否为空格或换行符确定字符是否为空格或换行符isUnicodeIdentifierStart()确定是否允许将指定字符作为确定是否允许将指定
3、字符作为 Unicode 标识符中的首字符标识符中的首字符Character包装类的方法包装类的方法方法说明int abs(int numvalue)计算计算 int 类型值类型值 numvalue 的绝对值,也的绝对值,也接收接收 long、float 和和 double 类型的参数类型的参数double ceil(double numvalue)返回大于等于返回大于等于 numvalue 的最小整数值的最小整数值double floor(double numvalue)返回小于等于返回小于等于 numvalue 的最大整数值的最大整数值int max(int a,int b)返回返回 in
4、t 型值型值 a 和和 b 中的较大值,也接收中的较大值,也接收 long、float 和和 double 类型的参数类型的参数int min(int a,int b)返回返回 a 和和 b 中的较小值,也可接收中的较小值,也可接收 long、float 和和 double 类型的参数类型的参数double random()返回带正号的返回带正号的 double 值,大于或等于值,大于或等于 0.0,小于,小于 1.0。Math 类的用法类的用法使用使用 Math 类的方法,如类的方法,如 ceil()、floor()和和 round(),random()注:注:Math.random()方法
5、返回一个方法返回一个01之间的之间的dobule值,如果需要整数或某一范围内的值,则值,如果需要整数或某一范围内的值,则可自己来处理。可自己来处理。sort(xxx a)方法binarySearch(xxxa,xxxkey)equals(xxx a,xxx a2)fill(xxx a,xxx val)toString(xxxa)sort方法:Arrays类的sort及其它方法都提供了很多的重载形式,可以多种类型的数组进行快速排序,但默认对数组元素按字典顺序来排序的如果想对一个数组包括自定义类的对象数组等按自定义规则来排序,则需使用sort方法的另一个重载形式,该方法需要为sort方法传一个实现
6、了Comparator接口的对象,该对象要实现compare方法用来控制两个元素的比较规则,sort方法通过该对象的返回值来确定排序的顺序。对自定义的类对象数组进行排序:class Human final int SORT_BY_NAME=1;/升序升序 final int SORT_BY_AGE=2;/降序降序 String name;int age;public Human(String name,int age)this.name=name;this.age=age;public String toString()return +name+,+age+;public static voi
7、d main(String args)Human hus=new Human3;hus0=new Human(Jack,20);hus1=new Human(Tom,30);hus2=new Human(Hans,15);System.out.println(排序前排序前:+Arrays.toString(hus);HumanComp hc=new HumanComp(Human.SORT_BY_NAME);Arrays.sort(hus,hc);System.out.println(按名字排序后按名字排序后:+Arrays.toString(hus);hc=new HumanComp(Hum
8、an.SORT_BY_AGE);Arrays.sort(hus,hc);System.out.println(按年龄排序后按年龄排序后:+Arrays.toString(hus);定义类比较器,实现Comparator 接口:class HumanComp implements Comparator int type=0;/按什么比较按什么比较 public HumanComp(int type)this.type=type;public int compare(Object o1,Object o2)Human h1=(Human)o1;Human h2=(Human)o2;int ret=
9、0;if(type=Human.SORT_BY_NAME)ret=pareTo(h2.name);else if(type=Human.SORT_BY_AGE)ret=h2.age-h1.age;return ret;Date 类表示日期和时间提供操纵日期和时间各组成部分的方法Date 类的最佳应用之一是获取系统当前时间构造方法说明Date()使用当天的日期创建使用当天的日期创建 DateDate(long dt)使用自使用自 1970 年年 1 月月 1 日以后的指定毫秒日以后的指定毫秒数创建数创建 Datejava.util.Date类虽然很常用,但它只适合表示时间,对时间类虽然很常用,但
10、它只适合表示时间,对时间的处理方法很多都已经废弃了,如果对时间进行具体地的处理方法很多都已经废弃了,如果对时间进行具体地操作,可以使用操作,可以使用Calendar类类根据给定的 Date 对象,Calendar 类可以以 YEAR 和 MONTH 等整型的形式检索信息它是抽象的,因此不能像 Date 类一样实例化通过Calendar.getInstance()可得到它的一个子类的实例,实例反映当前系统时间演示:示例 CalendarDisplay.javaSimpleDateFormat对日期进行格式化处理,主要功能:将日期按特定的格式转换为字符串(format)将字符串以某种方式转换为日期
11、(parse)/Date-StringString pattern=yyyy年MM月dd日 HH时mm分ss秒;SimpleDateFormat sdf=new SimpleDateFormat(pattern);String str=sdf.format(now);System.out.println(str=+str);此类生成随机数两种构造方法Random类的方法:nextInt()nextFloat()nextDouble()例子:TestRandom.java使用种子值作为参数没有参数类的构造方法类的构造方法类的构造方法类的构造方法方法说明System类类long currentTi
12、meMillies获取当前系统的时间获取当前系统的时间exit(int status)终止终止Java程序的运行,退出程序的运行,退出JVMRuntime类类Runtime getRuntime()返回当前的返回当前的Runtime对象对象Process exec(String com)执行指定的外部命令执行指定的外部命令1.public class Test2.public static void main(String s)throws Exception3.long start=System.currentTimeMillis();4.int m=0;5.int size=100000;
13、6.for(int i=0;isize;i+)7.m+=i;8.System.out.println(+i);9.10.long end=System.currentTimeMillis();11.long totalTime=end-start;12.System.out.println(for 运行了毫秒数:+totalTime+m+m);13.Runtime run=Runtime.getRuntime();14.run.exec(cmd/c start winword.exe);/用java打开word15.run.exec(cmd/c start mailto:);/用java打开outlook16.17.Q&A