基本类型的封装类


/**
 *
 * <p>
 * 描述该类情况 {@link 代表跟谁有关系}
 * </p>
 *
 * @author 王超
 * @since 1.0
 * @date 2016年10月21日 上午10:09:29
 * @see 新建|修改|放弃
 * @see com.shushine.framework.第七章Java标准类库.基本类型的封装类
 *      封装的目的和意义是:基本数据类型不是对象层次的结构的组成部分,它们通过值传递而不是通过引用传递。
 *      有时我们需要用这些简单类型建立对象表达式,例如当把对象放在集合中时,需要包装成对象。为了能够用对象的形式代表简单的数据类型,
 *      java提供了相对应的封装类
 */

public class 基本类型的封装类 {
    public static void main(String[] args) {
        /**
         * 双精度Double和浮点Float分别对应的是double和float的包装类
         */
        // 举例说明Double和Float中的常量
        System.out.println("Float中的常量:最大值:" + Float.MAX_VALUE + " 最小值:" + Float.MIN_VALUE + " 非数字:" + Float.NaN
                + " 正无穷:" + Float.POSITIVE_INFINITY + " 负无穷:" + Float.NEGATIVE_INFINITY);
        System.out.println("Double中的常量:最大值:" + Double.MAX_VALUE + " 最小值:" + Double.MIN_VALUE + " 非数字:" + Double.NaN
                + " 正无穷:" + Double.POSITIVE_INFINITY + " 负无穷:" + Double.NEGATIVE_INFINITY);
        // Double和Float的使用举例
        float f = 3.1415f;
        double d = 3.14159267;
        Float F = new Float(f);
        Double D = new Double(d);
        // 转成字符串
        System.out.println("F的字符串:" + F.toString() + " D的字符串:" + D.toString());
        // 提取简单类型值
        System.out.println("F的简单类型值:" + F.floatValue() + " D的简单类型值:" + D.doubleValue());
        /**
         * Byte Short Integer Long 类分别是byte,short,int,long 类型的分装类
         */
        // 数字和字符串之间的转换
        String s1 = "12", s2 = "34", s = null;
        int i1 = 0, i2 = 0, sum = 0;
        // 字符转转成整数
        i1 = Integer.parseInt(s1);
        i2 = new Integer(s2).intValue();
        sum = i1 + i2;
        // 数字转成字符串
        s = Integer.toString(sum);
        System.out.println(s);
        /**
         * Character 是char类型的封装类
         */
        char a[] = { 'a', '5', 'A', ' ', '$', '中' };
        for (int i = 0; i < a.length; i++) {
            if (Character.isDigit(a[i])) {
                System.out.println(a[i] + " is a digit");
            }
            if (Character.isLetter(a[i])) {
                System.out.println(a[i] + " is a lettter");
            }
            if (Character.isWhitespace(a[i])) {
                System.out.println(a[i] + " is  whitespace");
            }
            if (Character.isUpperCase(a[i])) {
                System.out.println(a[i] + " is uppercase");
            }
            if (Character.isLowerCase(a[i])) {
                System.out.println(a[i] + " is lowercase");
            }
        }
        /**
         * Boolean类是boolean 类的封装类
         */
        String s3 = "true";
        boolean bool = true;
        if (bool == new Boolean(s3).booleanValue()) {
            System.out.println("两个布尔类型变量相同");
        } else {
            // hashCode的用法:hash
            // code是一种编码方式,在Java中,每个对象都会有一个hashcode,Java可以通过这个hashcode来识别一个对象。
            System.out.println(Boolean.valueOf(s3).hashCode());
        }
        /**
         * 自动装箱和拆箱? JDk 5.0开始,基本类型的变量能够自动转换为它的包装类类型的对象,这种自动转换被称为自动装箱。
         * 包装器对象就像是“箱子”一样,其中存放着相应的基本类型的值。其反向转换,即自动把包装器对象转换为基本类型的值,被称为自动拆箱
         */
        // 自动装箱
        Integer Ig = 10;
        // 自动拆箱
        int i = Ig;

    }

}

posted @ 2016-10-21 12:46  qingtianBKY  阅读(473)  评论(0编辑  收藏  举报