zoukankan      html  css  js  c++  java
  • Integer

    package com.Integer;

    public class Study01 {
        /**
         * 对象包装类的引入
         * 基本数据类型没有什么方法,操作它的话比较麻烦,所以一般使用它的包装类进行操作
         * int    Integer
         * byte    Byte
         * short Short
         * long    Long
         * char    Character
         * boolean Boolean
         * float Float
         * double Double
         *
         * Integer
         * final修饰
         * 1.0开始
         *
         * 构造方法:
         *     Integer(int value)
         *     Integer(String s) //只能放可以转换成int的参数,否则报错NumberFormatException
         *
         * 获取Integer方法:
         *     static decode(String s) 将String解码成为Integer
         *     getInteger(String num [,int val]) 获取String、转化成为的Integer,转换失败返回null,有默认值得话转换失败返回默认值
         *  static valueOf(String str) 返回保存String值得Integer对象
         *  static valueOf(String str,int radix) 保存String的值转化成为以radix为基数的Integer对象,(就是将String中的值转换成某种进制的Integer对象)
         * 获取int
         *     intValue() 将Integer转化成为int
         *     parseInt(String str) 解析String为int
         *     parseInt(String str,int radix) 解析String为特殊进制的int
         *
         *     static toString(int x)将x转换成为String
         *     static toString(int x,int radix)将radix位的x转化成String
         *
         * 10进制转换到常用进制:
         *     toBinaryString(int x)转成二进制
         *  toHexString(int x)转成16进制
         *  toOctalString(int x)转成8进制
         *
         */
        public static void main(String[] args){
            Integer ii=Integer.getInteger("ss12",12);
            System.out.println(ii);
        }

    }

    package com.Integer;



    public class Study02 {
        /*
         *JDK5的新特性:自动拆装箱
         *装箱:把基本类型转换成为包装类类型
         *拆箱:将包装类类型转换成基本类型
         */
        
        public static void main(String[] args){
            /*Integer ii=100;
            ii+=200;
            System.out.println("ii:"+ii);*/
            testInteger();
            /*
              相当于这样:*/
                Integer ii = Integer.valueOf(100);
                ii = Integer.valueOf(ii.intValue() + 200);
                System.out.println((new StringBuilder("ii:")).append(ii).toString());
            
        }
        
        public static void testInteger(){
            /*
             * 看程序写结果
             */
            Integer i1=new Integer(127);
            Integer i2=new Integer(127);
            System.out.println(i1==i2);
            System.out.println(i1.equals(i2));
            System.out.println("-------------");
            
            Integer i3=new Integer(128);
            Integer i4=new Integer(128);
            System.out.println(i3==i4);
            System.out.println(i3.equals(i4));
            System.out.println("-------------");
            
            Integer i5=127;
            Integer i6=127;
            System.out.println(i5==i6);
            System.out.println(i5.equals(i6));
            System.out.println("-------------");
            
            Integer i7=128;
            Integer i8=128;
            System.out.println(i7==i8);
            System.out.println(i7.equals(i8));
            System.out.println("-------------");
            
        }
        
        /**
          自动装箱实际上使用的是Integer.valueOf()
          查看源码发现,针对-128~127之间的数据,做了一个数据缓存池,如果数据是该范围内的,每次不创建新对象,范围外每次创建新对象
     public static Integer valueOf(int i) {
        final int offset = 128;
        if (i >= -128 && i <= 127) { // must cache
            return IntegerCache.cache[i + offset];
        }
            return new Integer(i);
        }
      private static class IntegerCache {
        private IntegerCache(){}

        static final Integer cache[] = new Integer[-(-128) + 127 + 1];

        static {
            for(int i = 0; i < cache.length; i++)
            cache[i] = new Integer(i - 128);
        }
        }
         */

    }

  • 相关阅读:
    对数据库文件信息进行批量删除
    php多条件查询
    实现条件查询
    在PHP中设置封装类文件
    php中什么是一维数组什么是二维数组
    登录注册的学习
    git系列---【git提交代码时,文件名过长导致报错:libgit2 returned: invalid path for filesystem】
    git系列---【初始工程文件太大或者文件数太多时,向远程仓库push时总是失败,如何解决?】
    git系列---【git的撤销命令】
    git系列---【git新建分支时,已经推送到远程,发现分支名错了,如何修改分支名,并推送到远程?】
  • 原文地址:https://www.cnblogs.com/aigeileshei/p/5566030.html
Copyright © 2011-2022 走看看