Java基础知识2

将基本数据包装成对象:

byte Byte
short Short
int  Integer
long Long
char Character
float Float
double Double
大多数基本类型的包装类的名称与对应的基本数据类型名称一样,第一个字母要大写。
除了int对应的Integer和char对应的Character除外。

包装的方式基本一致,既可以用基本数据类型值也可以用表示数值的字符串来构造包装类。
如new Double(5.0)、new Double("5.0")、new Integer(5)、new Integer("5")

所有包装类都包含以下方法:
//byteValue()、shortValue()、intValue()、longValue()、floatValue()、doubleValue()
//各自类的两种构造方法:包装类名(基本数据类型)、包装类名(基本数据类型对应的字符串类型)
//对应类型的最大最小值MAX_VALUE和MIN_VALUE:例如Integer.MAX_VALUE和Float_MIN_VALUE
//compareTo(比较对象),返回int类型,如:
new Double(12.4).compareTo(new Double(12.3)) //返回1
new Double(12.3).compareTo(new Double(12.3))  //返回0
new Double(12.2)compareTo(new Double(12.3))  //return-1
// 数值包装类都包含一个有用的静态方法valueOf(String s)。该方法创建一个对象,并将
它初始化为指定字符串表示的值。
Double doubleObject = Double.valueOf("12.4");
Integer integerObject = Integer.valueOf("12");

包装类没有无参构造方法。所有包装类的实例都是不可改变的,这意味着一旦创建对象以后,
它们内部的值就不能改变。

—————————————————————————————————
BigInteger和BigDecimal类:
BigInteger和BigDecimal可以表示任意大小和任意精度的整数和浮点数

如,long型的最大整数为long.MAX_VALUE(9223372036854775807),而BigInteger的实例可以表示任意大小的整数。
可以使用new BigInteger(String)和new BigDecimal(String)来创建实例

BigInteger a=new BigInteger("9223372036854775807");
BigInteger b=new BigInteger("2");
BigInteger c=a.multiply(b);
System.out.println(c);
//18446744073709551614

BigDecimal对象可以达到任意精度,但对于1/3等,结果无穷尽的时候,会抛出错误,因此,可以用如下方法来避免。

BigDecimal b=new BigDecimal(3);
BigDecimal c=a.divide(b,20,BigDecimal.ROUND_UP);
System.out.println(c);
//输出为0.3333333333333333334
//divide(BigDecimal b,scale,int roundingMode);
//scale指小数点后的位数

—————————————————————————————————
instanceof操作符
如 A instanceof B,用于判断A是否是B的父类,如果是,返回true,如果不是,返回false

类中的多态,指的是,父类可以被子类实例化,而自类不能被父类实例化
例如:

几何图形Geometric是圆形Circle的父类
Geometric a=new Circle();  //正确
Circle b=new Geometric(); //错误

—————————————————————————————————
System.exit(1);
System.exit(0);
均表示退出
—————————————————————————————————
声明异常的关键字是throws
抛出异常的关键字是throw

捕获异常的范围应从小到大,不然系统编译不通过。

finally字句:

try
{
statements;
}
catch(TheException ex)
{
handing ex;
}
finally
{
finalStatements;
}
//如果try块没有出现异常,执行finalStatements,然后执行此外的语句。
//如果try块出现异常,并被catch块捕获,会跳过try块中异常语句之后的语句,执行catch块中的
内容,再执行finally中的内容,最后执行此外的语句。
//如果try块出现异常,但没有被catch块捕获,就会跳过try块异常语句之后的语句和catch块中的语句,执行finally中的语句,并将异常报告给方法的调用者。

—————————————————————————————————

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值