• 包装类(Wrapper) 的使用


    package com.ch.java2;
    
    import org.junit.Test;
    
    /*
     * 包装类的使用:
     * 1.java提供了8种基本数据类型对应的包装类,使得基本数据类型的变量具有类的特征
     * 
     * 2.掌握的:基本数据类型、包装类、String三者之间的相互转换
     * 
     * 
     * 
     */
    public class WrapperTest {
        
        //String类型 --->基本数据类型、包装类:调用包装类的parseXxx(String s)
        @Test
        public void test5(){
            String str1 = "123";
            //错误的情况:
    //        int num1 = (int)str1;
    //        Integer in1 = (Integer)str1;
            //可能会报NumberFormatException
            int num2 = Integer.parseInt(str1);//返回一个int型的值
            System.out.println(num2 + 1);//可以进行加减运算
            
            String str2 = "true1";
            boolean b1 = Boolean.parseBoolean(str2);
            System.out.println(b1);
        }
        
        //基本数据类型、包装类--->String类型:调用String重载的valueOf(Xxx xxx)
        @Test
        public void test4(){
            
            int num1 = 10;
            //方式1:连接运算
            String str1 = num1 + "";
            //方式2:调用String的valueOf(Xxx xxx)
            float f1 = 12.3f;
            String str2 = String.valueOf(f1);//"12.3"
            
            Double d1 = new Double(12.4);
            String str3 = String.valueOf(d1);
            System.out.println(str2);
            System.out.println(str3);//"12.4"
            
        }
        
        /*
         * JDK 5.0 新特性:自动装箱 与自动拆箱
         */
        @Test
        public void test3(){
    //        int num1 = 10;
    //        //基本数据类型-->包装类的对象
    //        method(num1);
            
            //自动装箱:基本数据类型 --->包装类
            int num2 = 10;
            Integer in1 = num2;//自动装箱
            
            boolean b1 = true;
            Boolean b2 = b1;//自动装箱
            
            //自动拆箱:包装类--->基本数据类型
            System.out.println(in1.toString());
            
            int num3 = in1;//自动拆箱
            
        }
        
        public void method(Object obj){
            System.out.println(obj);
        }
        
        //包装类--->基本数据类型:调用包装类Xxx的xxxValue()
        @Test
        public void test2(){
            Integer in1 = new Integer(12);
            
            int i1 = in1.intValue();
            System.out.println(i1 + 1);
            
            
            Float f1 = new Float(12.3);
            float f2 = f1.floatValue();
            System.out.println(f2 + 1);
        }
        
        //基本数据类型 --->包装类:调用包装类的构造器
        @Test
        public void test1(){
            
            int num1 = 10;
    //        System.out.println(num1.toString());
            Integer in1 = new Integer(num1);
            System.out.println(in1.toString());
            
            Integer in2 = new Integer("123");
            System.out.println(in2.toString());
            
            //报异常
    //        Integer in3 = new Integer("123abc");
    //        System.out.println(in3.toString());
            
            Float f1 = new Float(12.3f);
            Float f2 = new Float("12.3");
            System.out.println(f1);
            System.out.println(f2);
            
            Boolean b1 = new Boolean(true);
            Boolean b2 = new Boolean("TrUe");//可以忽略大小写
            System.out.println(b2);
            Boolean b3 = new Boolean("true123");
            System.out.println(b3);//false
            
            
            Order order = new Order();
            System.out.println(order.isMale);//false
            System.out.println(order.isFemale);//null
        }
        
    }
    
    class Order{
        
        boolean isMale;
        Boolean isFemale;
    }
    不积跬步,无以至千里;不积小流,无以成江海。
  • 相关阅读:
    Could not resolve com.android.support:appcompat-v7:28.0.0 错误处理
    解决 Could not resolve com.android.tools.build:gradle:3.1.3
    https://maven.google.com 连接不上的解决办法(转)
    jquery操作select(取值,设置选中)
    django 使用 request 获取浏览器发送的参数
    jquery下载,实时更新jquery1.2到最新3.3.1所有版本下载
    myeclipse 8.5反编译插件失效
    再探java基础——对面向对象的理解(2)
    庖丁解牛FPPopover
    去大连
  • 原文地址:https://www.cnblogs.com/CCTVCHCH/p/14589206.html
Copyright © 2020-2023  润新知