一.基本数据类型的包装类:
基本数据类型 包装类
int Integerchar
char Character
float Float
double Double
byte Byte
long Long
short Short
boolean Boolean
二.使用包装类:
String a ="18";//定义一个字符串
int i=Integer.parseInt(a);//把字符串转换成整型
System.out.println(i); //输出i的值
三. 装箱与拆箱:
装箱:将基本数据类型变成包装类,利用各个包装类的构造方法完成。
拆箱:将包装类变成基本数据类型,利用Number类的xxxValue()方法实现。
//举个例子:
integer x=new Integer(18);//基本类型变成包装类,装箱
int p=x.intValue();//包装类变成基本类型,拆箱
System.out.println(p*p);//输出p与p的乘积
四.基本数据类型与字符串的转换:
//字符串转换成Integer型:
int c=Integer.parseInt("123");
//字符串转换成Double型:
double c=Double.parseDouble("123.56");
//字符串转换成Boolean型:
boolean c=Boolean.parseBoolean("true");
//将基本数据类型转换成字符串:
int x=6;
String c=x+""; //任何类型与字符串相加之后就是字符串
String c=String.valueOf(x);//int变为String类型
五.System类:
System类中的方法cuurentTimeMills返回从GMT1970年1月1日00:00:00开始到当前时刻的毫秒数。
//计算程序运行的时间:
long be = System.currentTimeMillis();//开始的时间
long ed = System.currentTimeMillis();//结束的时间
System.out.println("程序运行消耗时间为:" + (ed - be) + "毫秒");
//系统退出:
System.exit(0);
//数组复制:
System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);
/*
源数组:Object src 目标数组: Object dest
源数组要复制的起始位置:int srcPos 目标数组的开始改变起始位置:int destPos
要复制的数组的长度:int length
*/
六.Runtime类(内存管理):
Runtime类封装了运行时的环境。每个Java应用程序都有一个Runtime 类实例,使应用程序能够与其运行的环境相连接。
//举个例子:
package Book1;
public class GetMemorySize {
public static void main(String[] args) {
Runtime run = Runtime.getRuntime(); // 单例设计
int c = 1000;// 定义一个字符串
for (int x = 0; x < 5000; x++) {
c += x; //垃圾产生
}
System.out.println("1、最大可用内存: " + run.maxMemory());
System.out.println("1、总共可用内存: " + run.totalMemory());
System.out.println("1、最大可用内存:" + run.freeMemory());
run.gc();// 清除垃圾
System.out.println("------------------------------------------");
System.out.println("2、最大可用内存:" + run.maxMemory());
System.out.println("2、总共可用内存:" + run.totalMemory());
System.out.println("2、最大可用内存:" + run.freeMemory());
}
}
七.日期类:
类名 说明
LocalDateTime 存储了日期和时间,如2014-08-27T 14:43:14.539
LocalDate 存储了日期,如2014-08-25
LocalTime 存储了时间,如 14:43:14.539
//方法 返回值 功能描述
after(Date when) boolean 测试当前日期是否在指定的日期之后
befor(Date when) boolean 测试当前日期是否在指定的日期之前
getTime() long 获得自1970年1月1日00000 GMT开始到现在所表示的亳秒数
setTime(long time) void 设置当前Dade对象历表示的日期时间值,该值用以表示1970年1月1日00:00:00 GMT以后time毫秒的时间点.
DateFormat类的常用方法:
//方法 返回值 功能描述
format(Date date) String 将一个Date 格式化为日期/时间字符串
getCalendar() Calendar 获取与此日期/时间格式器关联的日历
getDateInstance() statie DateFormat 获取日期格式器,该格式器具有默认语言环境的默认格式化风格
getDateTimeInstance() static DateFormat 获取日期/时间格式器,该格式器具有默认语言环境的默认格式化风格
getInstance() static DateFormat 获取SHORT风格的默认日期/时间格式器
getTimeInstance() static DateFormat 获取时间格式器,该格式器具有默认语言环境的默认格式化风格
parse(String soure) Date 将字符串解析成一个日期, 并返回这个日期的Date对象
//举个例子:
package Book1;
/*
* 获得当前日期时间
*/
import java.time.*;
public class GetDate {
public static void main(String[] args) {
//新建一个LocalDateTime对象获取当前时间
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime); // 直接输出对象
}
}
将日期格式化:
/* 将时间格式转化为字符串*/
package Book1;
import java.time.*;
import java.time.format.*;
public class DateFormatDemo {
public static void main(String[] args) {
//获取当前时间
LocalDate localDate = LocalDate.now();
//指定格式化规则
DateTimeFormatter f = DateTimeFormatter.ofPattern( "dd/MM/uuuu");//将当前时间格式化
String str = localDate. format(f);
System.out.println("时间:"+str);
}
}
八.正则表达式:
//举个例子(运用正则表达式):
package Book1;
/*
* 字符串替换
*/
public class Zhenzhe_SubString {
public static void main(String[] args) {
String str = "a1b22c334444e55555f6666666g ";
String regex = "[0-9]+";// 数字出现1次或多次
//String regex= "\\d+"; //数字出现1次或多次
System.out.println(str.replaceAll(regex, ""));
}
}
九.Math类:
Math类的数学常量:
Math.PI //表示圆周率Π的值(3.141592653589793)
Math.E //表示自然对数底数e的值(2.718281828459045)
指数函数方法:
//方法 功能描述
exp(double a) 用于获取e的a次方
double log(double a) 用于取自然对数,即取lna的值
double log10(double a) 用于取底数为10的对数
sqrt(double a) 用于取a的平方根,其中a的值不能为负值
cbrt(double a) 用于取a的立方根
pow(double a,double b) 用于取a的b次方
取整函数方法:
//方法 功能描述
Math.ceil(double a) 返回大于或等于参数的最小整数
Math.floor(double a) 返回小于或等于参数的最大整数
Math.rint(double a) 返回与参数最接近的整数,如果两个同为整数且同样接近,则结果取偶数
Math.round(float a) 将参数加上0.5后返回与参数最近的整数,然后强制转换为int型(四舍五入后的结果)
Math.round(double a) 将参数加上0.5后返回与参数最近的整数,然后强制转换为long型(四舍五入后的结果)
Math.random() 生成一个大于等于0.0小于等于1.0的double类型随机值
注意:
Math.ceil():
类似于“天花板”的意思。
Math.ceil(1.1)=Math.ceil(1.5)=Math.ceil(1.9)=2.0
Math.ceil(-1.1)=Math.ceil(-1.5)=Math.ceil(-1.9)=-1
Math.floor():
类似于“地板”的意思。
Math.floor(1.1)=Math.floor(1.5)=Math.floor(1.9)=1.0
Math.floor(-1.1)=Math.floor(-1.5)=Math.floor(-1.9)=-2.0
取最大值、最小值、绝对值函数方法:
//方法 功能描述
max(double a,double b) 取a与b之间的最大值
min(int a,int b) 取a与b之间的最小值,参数为整型
min(long a,long b) 取a与b之间的最小值,参数为长整型
min(float a,float b) 取a与b之间的最小值,参数为浮点型
min(double a,double b) 取a与b之间的最小值,参数为双精度型
abs(int a) 返回整型参数的绝对值
abs(long a) 返回长整型参数的绝对值
abs(float a) 返回浮点型参数的绝对值
abs(double a) 返回双精度型参数的绝对值
十.Random类:
通过实例化一个Random类可以创造一个随机数生成器。
Random r=new Random();
Random类还提供了生成各种数据随机数的方法。
//方法 功能描述
nextInt() 返回一个随机int型值
nextInt(int n) 返回大于或等于0、小于n的随机int型值
nextLong() 返回一个随机long型值
nextBoolean() 返回一个随机boolean型值
nextFloat() 返回一个随机float型值
nextDouble() 返回一个随机double型值
nextGaussian() 返回一个概率密度为高斯分布的double 型值
十一.Integer类常用方法:
//方法 功能描速
valueOf(String str) 返回String型参数值的Integer对象
parseInt(String str) 返回与String型参数值等价的int值
toString() 返回一个表示Integer值的String对象(可以指定进制基数)
toBinaryString(int i) 以二进制无符号整数形式返回一个整数参数的字符串表示形式
toHexString(int i) 以十六进制无符号整数形式返回一个整数参数的字符串表示形式
toOctalString(int i) 以八进制无符号整数形式返回一个整数参数的字符串表示形式
equals(Object IntegerObj) 比较此对象与指定的对象是否相等
intValue() 以int型返回此Integer 对象
shortValue() 以short型返回此Integer对象
byteValue() 以byte类型返回此Integer的值
compareTo(Integer anotherInteger) 对两个Integer对象进行数值比较。如果这两个值相等,则返回0;如果调用对象的数值小于anoterInteger 的数值,则返回负值; 如果调用对象的数值大于anotherInteger 的数值,则返回正值。
十二.String类:
//方法声明 功能描述
int indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引
int lastlndexOf(int ch) 返回指定字符在此字符串中最后一次出现处的索引
int indexOf(String str) 返回指定子字符串在此字符串中第一次出现处的索引
int lastlndexOf(String str) 返回指定子字符串在此字符串中最后次出现处的索引
char charAt(int index) 返回字符串中index位置上的字符,其中,index 的取值范围是0~(字书串长度-1)
boolean endsWith(String suffix) 判断此字符串是否以指定的字符串结尾
int length() 返回此字符串的长度
boolean equals(Object anObject) 将此字符串与指定的字符串比较
boolean isEmpty() 当且仅当字符串长度为0时返回true
boolean startsWith() 判断此字符串是否以指定的字符串开始
boolean contains(CharSequence cs) 判断此字符串中是否包含指定的字符序列
String toLowerCase() 使用默认语言环境的规则将String中的所有字符都转换为小写
String toUpperCase() 使用默认语言环境的规则将String中的所有字符都转换为大写
static String valueOf(int i) 返回int参数的字符串表示形式
char[] toCharArray() 将此字符串转换为一个字符数组
String replace(CharSequence oldstr,CharSequence newstr) 返回一个新的字符串,它是通过用newstr 替换此字符串中出现的所有oldstr得到的.
String[] split (String regex) 根据参数regex将原来的字符串分割为若干个子字符串
String substring(int beginIndex) 返回一个新字符串,它包含从指定的beginIndex处开始直到此字符串末尾的所有字符
String substring(int beginIndex, int endIndex) 返回一个新字符串,它包含从指定的beginIndex处开始直到索引endIndex-1处的所有字符
String trim() 返回一个新字符串,它去除了原字符串首尾的空格
十三.StringBuffer类:
StringBuffer 类常用方法:
//方法声明 功能描述
StringBuffer append(char c) 添加参数到StringBuffer对象后(追加)
StringBuffer insert(int offset, String str) 将字符串中的offset位置插入字符串str
StringBuffer deleteCharAt(int index) 移除此序列指定位置的字符
StringBuffer delete(int start,int end) 删除StringBuffer对象中指定范围的字符或字符序列
StringBuffer replace(int star,int end ,String s) 在StringBuffer对象中替换指定的字符或字符串序列
void setCharAt(int index, char ch) 修改指定位置index处的字符序列
String toString() 返回StringBuffer缓冲区中的字符串
StringBuffer reverse() 将此字符序列用其反转形式取代