工具类

工具类

包装类(封装类)

JDK1.5 版本之后自动拆装包

byte--------Byte
short-------Short
int----------Integer
long--------Long
float--------Float
double----Double
char-------Character
boolean---Boolean

1、8个包装类都在java.lang包下,不需要import导包,直接调用
2、6个与数字相关的包装类都继承Number类

	public final class Byte extends Number implements Comparable{……}
	public final class Short extends Number implements Comparable{……}
	public final class Integer extends Number implements Comparable{……}
	public final class Long extends Number implements Comparable{……}
	public final class Float extends Number implements Comparable{……}
	public final class Double extends Number implements Comparable{……}

3、8个包装类都实现了Serializable、Comparable
4、8个包装类都有带自己对应类型参数的构造方法

public Byte(byte value) {
    this.value = value;
}
public Short(short value) {
    this.value = value;
}
public Integer(int value) {
    this.value = value;
}
public Long(long value) {
    this.value = value;
}
public Float(float value) {
    this.value = value;
}
public Double(double value) {
    this.value = value;
}
public Character(char value) {
    this.value = value;
}
public Boolean(boolean value) {
    this.value = value;
}

5、8个包装类中除Character外都存在带有String类型的构造方法重载
6、创建对象,对象方法调用

将一个包装类类型转化成对应的基本类型
Integer i = new Integer(10);
int  value = i.intValue();

Integer i1 = 10;
int value = new Integer(10);

int value = Integer.parseInt("123");

== 与equals()的区别

==

  1. 比较基本数据类型比较的是值
  2. 比较引用数据类型比较的是地址

equals()

  1. Object类中的方法,每一个引用类型都可以调用
  2. 默认继承到的equals()用法与 == 用法一致
  3. 如果想改变使用规则可以在子类中进行重写(Integer中重写了equals()方法,所以比较的是数值)

数字相关类

Math

在java.lang包下;构造方法私有,不能直接调用;提供的属性方法都是static,不需要创建对象
4. 常用的方法
abs():返回给定数字的绝对值
ceil():向上取整,返回值类型为double
floor():向下取整,返回值类型为double
rint():临近的整数,如果两遍距离一样,取偶数,返回值类型为double
round():四舍五入,返回值为int类型
max(a,b);min(a,b):参数int.long.float.double
pow(a,b):a的b次方,参数返回值为double
sqrt(double a):获取给定参数平方根
random():获取【0.0-1.0)之间的double类型随机数

Random

在java.util包下,需要import导入;没有任何继承关系,默认继承Object类
创建对象:Random r = new Random();
5. 常用方法
r.nextInt():随机产生int取值范围的整数
r.nextInt(int bound):随机产生一个[0-bound)的整数,bound必须为正数,否则出现运行时异常IllegalArgumentException
r.nextFloat():随机[0.0-1.0)
r.nextBoolean():随机产生true false

UUID

在java.util包下,需要import导入;没有任何继承关系,默认继承Object类
UUID uuid = UUID.randomUUID();
System.out.println(uuid.toString());//数据库表格主键
产生一个32位随机元素,每一个位置是一个16进制数字

BigInteger

在java.util包下,需要import导入;继承Number;创建对象,提供方法全部带参数

  1. 通常利用带有String参数的构造方法创建这个类
    BigInteger bi = new BigInteger(“123”);
  2. 常用方法
    add();subtract();multiply();divide();

BigDecimal

java.math包下;继承Number类;通常利用带有String参数的构造方法创建这个类

  1. 常用方法
    add();subtract();multiply();divide();
    两个参数前面是保留小数点之后的位数;后面参数是设置的模式
    对象.setScale(2,BigDecimal.ROUND_DOWN);

DecimalFoemat

对小数点前后进行格式化
java.text包下,需要import才能使用
通过String参数的构造方法创建一个格式化对象,0,#
调用format方法将小数格式化程一个字符串
DecimalFormat df = new DecimalFormat(“000.###”);0,#
String value = df.format(13.456);

你可能感兴趣的:(java,java)