java系统常用类
1、Object类
构造方法:
Object()
常用方法:
String toString(); 返回:类名+@+哈希值
int hashCode(); 返回:哈希值
boolean equals(Object obj);
2、字符串
--String:创建之后不会再做修改和变动的字符串常量;
—StringBuffer / StringBuilder:创建之后允许再做更改和变化的字符串变
String常用方法:
1. int length();
2. char charAt(int index);
3. int indexOf(String sub); //有重载方法
4. int lastIndexOf(String sub);//有重载方法
5. int compareTo(String oth);
6. String concat(String oth) / +
7. byte[] getBytes(); 有重载方法
8. char[] toCharArry();
9. String toLowerCase()
10. String toUpperCase()
11. String replace(char ochar,char nchar);
12. String replaceAll(String regex,String nchar);
13. String[] split(String regex);
14. substring(int start,int end);//有重载方法(注意)
15. startsWith(String str);
16. endsWith(String str);
17. equals(); / == //(注意)
(注:equals和==的区别:equals值比较
== 地址比较
String重写了Object类中的hashCode(), equals(), toSting()方法)
18. equalsIgnoreCase();//不区分大小写
StringBuffer常用方法:
1. StringBuilder append(String str); //有多个重载方法
2. StringBuilder reverse();
3. StringBuilder insert(int offset, String str);
4. StringBuilder delete(int start, int end);
5. int length();
6. String toString();
3、基本数据类型转换
八个基本数据类型对应的封装类(wrapper class):
boolean --> Boolean
char --> Character
byte --> Byte
short ---> Short
int --> Integer
long --> Long
float --> Float
double --> Double
八个基本数据类型都重写了Object中的hashCode(), equals(), toString()方法。
基本类型--->封装类型
Integer inObj = new Integer(10);
System.out.println(inObj);
封装类型--->基本类型
int i = inObj.intValue();
System.out.println(i);
基本类型---->字符串
String stri = String.valueOf(i);
System.out.println(stri);
字符串---->基本类型
int inti = Integer.parseInt("100");
System.out.println(inti);
4、Character
常用方法:
static boolean isDigit(char ch) //是否是数字
static boolean isLetter(char ch) //是否是字母
static boolean isLetterOrDigit(char ch)// 是否是字母或数字
static boolean isLowerCase(char ch) 小写
static boolean isUpperCase(char ch) 大写
static char toLowerCase(char ch) 转换成小写
static char toUpperCase(char ch) 转换成大写
static boolean isSpaceChar(char ch)
String toString()
5、数学函数类Math
常量:
static double E
static double PI
常用的方法:
static double abs(double a); //有重载方法 绝对值
static double ceil(double a); //有重载方法 大于等于
static double floor(double a); //有重载方法 小于等于
static long round(double a); //有重载方法 四舍五入
static double pow(double a, double b); //次方
static double random();//随机数
6、日期相关类
(1)long System.currentTimeMillis();
//返回以毫秒为单位的当前时间,返回当前时间与 1970 年 1 月 1 日午夜之间的时间差(以毫秒为单位测量)。
这个方法常用计算一段代码所发的时间;
例如:long start = System.currentTimeMillis();
程序段…
long end = System.currentTimeMillis();
long diff = end - start;//程序段执行所用时间
(2)Date
常用构造方法:
Date()
Date(long date)
常用方法:
boolean after(Date when);
boolean before(Date when);
String toString();
(3)日期格式化
DateFormat抽象类提供了格式化日期的方法, SimpleDateFormat是它的简单实现类。可以将日期格式化成指定格式的字符串;也可将指定格式字符串格式化为日期;
SimpleDateFormat类的常用构造方法:
SimpleDateFormat();
SimpleDateFormat(String pattern);
toPattern();
常用方法:
Date parse(String text, ParsePosition pos);
String format(Date date);
//日期转化为指定格式字符串:
Date date=new Date();
SimpleDateFormat sdf= new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
String str=sdf.format(date);
//指定格式字符串转化为日期:
String str=“2009-02-18 23:23:32”;
SimpleDateFormat sdf= new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Date date=sdf.parse(str,new ParsePosition(0) );
(4)Calendar抽象类
Calendar 类是一个抽象类,用于描述一个日历。这个类不能直接初始化,但有个类方法getInstance() 用于创建Calendar对象。
常用方法:
static Calendar getInstance();
int get(int field);
Date getTime()
int get(int field);
void set(int field, int value);
void setTime(Date date);
void setTimeInMillis(long millis);
Calendar常量有:
static int YEAR
static int MONTH // 取得的月要加1;因为月从0开始
static int DAY_OF_MONTH
static int HOUR_OF_DAY
static int HOUR
static int MINUTE
static int SECOND
static int DAY_OF_WEEK // 星期日为一个星期的第一天,索引从1开始。
7、精度计算
BigDecimal类可以实现精度计算,BigDecimal 类提供以下操作:算术、标度操作、舍入、比较、哈希算法和格式转换 ;
常用构造方法:
BigDecimal(String val); //字符串
BigDecimal(double val);
常用方法:
BigDecimal add(BigDecimal augend); // +
BigDecimal subtract(BigDecimal subtrahend); // -
BigDecimal multiply(BigDecimal multiplicand); // *
BigDecimal divide(BigDecimal divisor); // /
BigDecimal setScale(int newScale, int roundingMode);
常用常量: (roundingMode)
static int ROUND_HALF_UP
例子:
BigDecimal bd1 = new BigDecimal("0.3");
BigDecimal bd2 = new BigDecimal("3");
BigDecimal bd3 = bd1.multiply(bd2); // *
double tmp11 = bd3.doubleValue();
System.out.println("0.3*03=" + tmp11);
BigDecimal bd4 = bd1.divide(bd2,2,BigDecimal.ROUND_HALF_UP); // /
BigDecimal bd4 = new BigDecimal("3.1415");
BigDecimal bd5 = bd3.setScale(3,BigDecimal.ROUND_HALF_UP); // 四舍五入
double tmp51 = bd5.doubleValue();
System.out.println(tmp51);
8、数字格式化
NumberFormat 是所有数字格式的抽象基类。此类提供了格式化和分析数字的接口;
常用方法:
static NumberFormat getInstance()
void setMaximumFractionDigits(int newValue)
void setMaximumIntegerDigits(int newValue)
void setMinimumFractionDigits(int newValue)
void setMinimumIntegerDigits(int newValue)
String format(long number)
Number parse(String source)
DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。该类设计有各种功能;
常用构造方法:
DecimalFormat()
DecimalFormat(String pattern)
常用方法:
String toPattern()
void applyPattern(String pattern)
String format(double d); //有重载方法
例子:
java.text.NumberFormat nf =
java.text.NumberFormat.getInstance();
nf.setMinimumIntegerDigits(3);// 整数部分最少3位.
// nf.setMaximumIntegerDigits(3);
nf.setMaximumFractionDigits(2);// 小数部分最多2位.
// nf.setMinimumFractionDigits(2);
String str11 = nf.format(Math.PI);
System.out.println(str11);
//
// --------java.text.DecimalFormat的使用
java.text.DecimalFormat df =
new java.text.DecimalFormat("##.00");
String str12 = df.format(Math.PI);
System.out.println(str12);