常用类

系统相关类

System类
	System类代表当前Java程序的运行平台。System类是一个final类,该类的所有属性和方法都是静态的。System类的属性in、out和err分别对应标准输入、标准输出和错误输出流。System类常用于纪录程序执行的时间、复制数组、确定当前的系统属性和获取系统环境变量等工作。
	常用方法:
		currentTimeMillis();返回以毫秒为单位的当前时间
		exit(int status);终止当前正在运行的 Java 虚拟机
		getProperties();  确定当前的系统属性
		getProperty(String key);获得指定键指示的系统属性
		nanoTime();返回最准确的可用系统计时器的当前值,以毫微秒为单位
		gc();运行垃圾回收器
	检测一段代码运行时所花费的时间,可以调用System类的currentTimeMillis()方法或nanoTime()方法,调用System类的getProperties()方法和getProperty(String key)方法,可以获取系统相关属性。
Runtime类
	Runtime类代表Java程序的运行时环境,每个Java程序都有一个与之对应的Runtime实例,应用程序通过该对象与其运行时环境相连。应用程序不能创建自己的Runtime实例,但是可以通过Runtime类的静态方法getRuntime()获取与之关联的Runtime对象。获取Runtime对象后,我们就可以使用Runtime类相关的方法,访问JVM相关信息,包括处理器数量、内存信息等等。Runtime类的exec()方法,我们还可以运行操作系统命令。
	常用方法:
		availableProcessors();当前处理器数量
		freeMemory();空闲内存数
		totalMemory();总内存数
		maxMemory();可用最大内存数

字符串相关类

String类
	String类包含了一个不可变的字符串。一旦一个String对象被创建,包含在这个对象中的内容就是不可改变的,直至这个对象被销毁。
	创建String对象的常用方式:
		1、使用String对象的构造器显式创建,例如:String str  = new String("Hello");
		2、通过用字符串常量直接给String类型变量赋值隐式创建。例如:String str  = "Hello";
	常用方法:
		char charAt(int index);返回指定索引的字符
		int compareTo(Object o);将该字符串对象与另一个对象进行比较
		String concat(String str);将指定字符串连接到该字符串的末尾 
		boolean endsWith(String suffix);测试该字符串是否以指定后缀结尾
		boolean equals(Object anObject;将该字符串与指定对象进行比较
		byte[] getBytes();根据平台默认的字符编码,将该字符串转换为字节类型,将结果存入新的字节数组中
		int indexOf(int ch);返回指定字符在该字符串内首次出现的索引
		int length();返回该字符串的长度
		String substring(int beginIndex);返回新字符串,作为该字符串的子字符串
		String toUpperCase();将该字符串中的所有字符转换为大写
		String trim();删除该字符串两端的空格
		static String valueOf(int i);返回整型参数的字符串表示法
		static String valueOf(Object obj);返回对象参数的字符串表示法
StringBuffer类
	StringBuffer对象则代表一个内容可变的字符串。当一个StringBuffer被创建以后,通过StringBuffer提供的方法可以改变该字符串对象的字符序列。一旦通过StringBuffer生成了最终想要的字符串,就可以调用它的toString()方法将其转换为一个String对象。
	StringBuffer和String虽然都可以用于代表字符串,但是二者的内部实现方式有所不同。StringBuffer在进行字符串处理时,不生成新的对象,在内存使用上要优于String。所以,在实际使用中,如果经常需要对字符串进行修改,使用StringBuffer性能要更好一些。
	使用StringBuffer创建字符串对象,不能通过直接用字符串常量给StringBuffer类型的引用赋值的方式创建,只能通过使用StringBuffer的构造器创建。
	StringBuffer类操作字符串的很多方法与String类相同,但是StringBuffer主要偏重于对字符串的变化,例如追加、插入和删除等。
	常用方法:
		StringBuffer append(数据);将数据追加到StringBuffer所代表的字符串的末尾
		int capacity();返回StringBuffer的当前容量
		StringBuffer delete(int start, int end);删除字符串中从索引位置start到end(不包括)位置的字符。
		StringBuffer deleteChartAt(int index);删除指定位置的字符
		StringBuffer insert(int offset, 数据);将指定的数据插入到该StringBuffer指定位置
		StringBuffer replace(int start, int end, String str);用指定字符串中的字符替换该StringBuffer中的字符
		StringBuffer reverse();倒序替换该StringBuffer中包含的字符序列
		void setCharAt(int index, char ch);将该StringBuffer指定索引处的字符赋给ch
		void setLength(int newLength);设置该StringBuffer的长度
		String substring(int start);返回一个新字符串,该字符串包含了该StringBuffer中当前所包含的字符序列,此子字符串从指定索引处开始,并延伸到StringBuffer的结尾
		String substring(int start, int end);返回一个新字符串,该字符串包含了该StringBuffer中当前所包含的字符序列
		String toString();转换成表示该StringBuffer中数据的字符串
StringBuilder类
	JDK5中新增了一个StringBuilder对象,它也代表字符串对象。StringBuilder和StringBuffer在很多方面是相同的,不同的地方是StringBuffer方法是线程安全的,而StringBuilder则不是。所以,StringBuilder比StringBuffer性能略高。在不考虑线程安全的情况下,如果需要创建一个内容可变的字符串对象,应该优先考虑使用StringBuilder

日期相关类

Date类
	Date类表示特定的瞬间,精确到毫秒。该类提供了很多方法,但是很多已经过时,不推荐使用。
	常用方法:
		boolean after(Date when); 测试此日期是否在指定日期之后
		boolean before(Date when);	测试此日期是否在指定日期之前
		long getTime();	返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
		void setTime(long time);	设置此 Date 对象,以表示 1970 年 1 月 1 日 00:00:00 GMT 以后 time 毫秒的时间点
DateFormat抽象类与SimpleDateFormat类
	DateFormat是一个抽象类,我们可以使用它用预定义的本地化方式格式化和解析时间日期。因为DateFormat是一个抽象类,所以不能直接实例化,但是它提供了大量的静态方法返回一个具体的子类,让我们可以用不同的方法格式化日期时间。
	DateFormat类的getDateInstance()方法返回一个将日期按照默认地区或者特定地区的方式格式化的DateFormat对象,此外,还可以使用DateFormat的常量FULL、LONG、SHORT或DEFAULT来指定格式化的风格。
Calendar抽象类与GregorianCalendar类
	在JDK第一次发布时,Date类是唯一的代表日期时间的类。但是由于Date类在编写的时候并没有考虑到各个国家的实际情况,在国际化方面考虑不够周到,所以从JDK1.1版本开始,Java中推荐使用Calendar类来处理日期时间,并将很多Date类的方法设置为已经过时。
	Calendar类是一个抽象类,它的功能比Date类要强大很多,实现方式也比Date类要复杂。Calendar类提供了很多方法,来完成日期时间之间的相互操作功能。表12-7列出了Calendar类的主要方法。
	常用方法:
		add();实现在某个日期上的增加若干天、年、月、小时等后的新日期
		get()	得到日期对象中的年、月、日、小时、分、秒等
		set()	修改日期对象中的年、月、日、小时、分、秒等
		getInstance()	返回一个Calendar类型的对象实例
	常用的Calendar类中的常量:
		Calendar.DAY_OF_YEAR 当年的多少天
	    Calendar.DAY_OF_MONTH 当月的多少天
	    Calendar.DAY_OF_WEEK 当周的多少天
	    Calendar.WEEK_OF_YEAR 当年的第几周
 	    Calendar.WEEK_OF_MONTH 当月的第几周
	    Calendar.AM_PM 上午/下午

数学相关类

Math类
	Math类是一个数学工具类,在Java语言中,常用的数学常数和数学方法都在该类内部,而且无论是常数还是方法都是static类型的,可以直接通过"Math.方法名()"进行调用,方便程序员进行实际的使用。
	求一个数的绝对值
	System.out.println(Math.abs(-1));
	求一个数的平方根
	System.out.println(Math.sqrt(64));
	求一个数的立方根
	System.out.println(Math.cbrt(27));
	求一个数的5次方根
	System.out.println(Math.pow(64, (1.0/5)));
	随机函数
	System.out.println(Math.random());//随机数 获得范围是:[0.0----1.0),一个伪随机 double大于或等于 0.0并小于 1.0 。 
	向上取整
	System.out.println(Math.ceil(10.0456781));//返回大于或等于参数的最小(最接近负无穷大) double值,等于一个数学整数
	向下取整
	System.out.println(Math.floor(10.0456781));//返回小于或等于参数的最大(最接近正无穷大) double值,等于一个数学整数。
	求一个数的多次幂
	System.out.println(Math.pow(2, 5));
	勾股定律(求直角三角形的斜边的长度)
	System.out.println(Math.hypot(3, 4));
	System.out.println(Math.E);//2.718281828459045
	System.out.println(Math.log(100));//e的几次幂等于某一个数  2.718281828459045的4.605170185988092次方等于100
	System.out.println(Math.log10(10000));//得到的结果是4   10的4次幂刚好是10000
	返回与参数最接近值的double值,等于数学整数    
	如果这个数跟它最近的两个数距离一样,那么就近返回偶数
	System.out.println(Math.rint(6.5));
	四舍五入
	返回与参数最接近值的long值,等于数学整数    
	如果这个数跟它最近的两个数距离一样,那么就就近返回最大的数
	System.out.println(Math.round(6.5));
随机数
	在Java中,产生随机数的方法有三种:
	1、通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字,我们可以把这个数字当作随机数。
	2、通过Math类的静态方法random()返回一个0到1之间的double值。我们可以将这个值乘以一定的数,比如100,那么它就是一个100以内的随机数。
	3、通过Random类来产生一个随机数。 
	在这三种方法中,Random类更为专业,功能更为强大。所以,我们一般采用位于java.util包中的Random类做为随机数生成器。
	Random类的主要方法:
			boolean nextBoolean();	返回下一个boolean类型随机数,生成true和false的值机率相等
			double nextDouble();返回下一个double类型随机数,数值介于[0,1.0)之间。
			int nextInt();	返回下一个int类型随机数,该值介于int的区间,也就是-231到231-1之间。
			int nextLong()	; 返回下一个long类型随机数,该值介于long的区间
			int nextInt(int n);	返回下一个int类型随机数,该值介于[0,n)的区间。
			void setSeed(long seed);	设置Random对象中的种子数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值