48、java.lang.Number类

一、Number类

 

/**
 * Number
 * 抽象类 Number 是 BigDecimal、BigInteger、Byte、Double、Float、Integer、Long 和 Short 类的超类
 * Number 的子类必须提供将表示的数值转换为 byte、double、float、int、long 和 short 的方法。 
 */
public abstract class Number implements Serializable
{
	//以 int 形式返回指定的数值。这可能会涉及到舍入或取整
	public abstract int intValue();

	public abstract long longValue();

	public abstract float floatValue();

	public abstract double doubleValue();

	public byte byteValue(){}

	public short shortValue(){}
}

 

二、练习

 

import java.math.*;

/**
 * 计算任意多个任意数字类型数字的和
 */

class Demo 
{
	public static void main(String[] args) 
	{
		Number sum = add(1,3.6,5.2f);
		System.out.println(sum);
	}
	public static Number add(Number...nums)
	{
		BigDecimal bd = null;
		BigDecimal sum = new BigDecimal(0);
		for(Number num : nums)
		{
			bd = new BigDecimal(num.toString());
			sum = sum.add(bd);
		}
		return sum;
	}
}

 

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