Java教程

Java源码分析四(Integer)

本文主要是介绍Java源码分析四(Integer),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Java源码分析四()

*类中的属性分析
    下面两个属性定义了Integer能存储数据的最大值和最小值 因为int是32位 所以最大值为2的31次方-1、最小值为2的31次方。
    @Native public static final int   MIN_VALUE = 0x80000000;
    @Native public static final int   MAX_VALUE = 0x7fffffff;
    此属性返回基本数据类型int对应反射的类 与Integer.getClass不是同一个
    public static final Class<Integer>  TYPE = (Class<Integer>) Class.getPrimitiveClass("int");
    下面定义一个方便存储int值和转换toString的char【】数组 作用 根据下标和对应的进制找到对应的值 比如16进制 15 他的存储数据就是f
     final static char[] digits = {
        '0' , '1' , '2' , '3' , '4' , '5' ,
        '6' , '7' , '8' , '9' , 'a' , 'b' ,
        'c' , 'd' , 'e' , 'f' , 'g' , 'h' ,
        'i' , 'j' , 'k' , 'l' , 'm' , 'n' ,
        'o' , 'p' , 'q' , 'r' , 's' , 't' ,
        'u' , 'v' , 'w' , 'x' , 'y' , 'z'
    };
     下面定义了一个数组作用取出一个数的十位数 如87将取出8 99取出9 下面用到会详细讲解
     final static char [] DigitTens = {
        '0', '0', '0', '0', '0', '0', '0', '0', '0', '0',
        '1', '1', '1', '1', '1', '1', '1', '1', '1', '1',
        '2', '2', '2', '2', '2', '2', '2', '2', '2', '2',
        '3', '3', '3', '3', '3', '3', '3', '3', '3', '3',
        '4', '4', '4', '4', '4', '4', '4', '4', '4', '4',
        '5', '5', '5', '5', '5', '5', '5', '5', '5', '5',
        '6', '6', '6', '6', '6', '6', '6', '6', '6', '6',
        '7', '7', '7', '7', '7', '7', '7', '7', '7', '7',
        '8', '8', '8', '8', '8', '8', '8', '8', '8', '8',
        '9', '9', '9', '9', '9', '9', '9', '9', '9', '9',
        } ;
        这个是取出个位数 如86取出6
        final static char [] DigitOnes = {
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
        } ;
      定义了Integer所占的位数32位也就是int的位数
      @Native public static final int SIZE = 32;
      定义了所占字节 为 32/8=4;
      public static final int BYTES = SIZE / Byte.SIZE;
      序列号
      @Native private static final long serialVersionUID = 1360826667806852920L;

*构造器

这篇关于Java源码分析四(Integer)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!