黑马程序员技术交流社区

标题: 基本数据类型对象包装类的问题 [打印本页]

作者: 李阳阳    时间: 2013-3-24 20:19
标题: 基本数据类型对象包装类的问题
本帖最后由 李阳阳 于 2013-3-25 09:34 编辑
  1. public static void main(String[] args)
  2.         {
  3.               //Integer i = new Integer();
  4.                 //System.out.println( i.MAX_VALUE); 为什么这样不行啊
  5.                         System.out.println(Integer.MAX_VALUE);

  6.         }
复制代码

作者: 炉海佳    时间: 2013-3-24 21:04
Integer.MAX_VALUE这个是int类型能够表示的最大值也就是2*32 -1,也算是一个常量,固定的,就像圆周率pi一样就是3.1415
作者: HM李超    时间: 2013-3-24 21:21
查看jdk api文档:
                     public static final int MAX_VALUE   值为 2的31次方-1 的常量,它表示 int 类型能够表示的最大值。
MAX_VALUE是包装类Integer的静态属性,可以直接被类名调用。也可以被对象调用。

而且:你第一行代码是错误的,没有那种构造函数?看api说明Integer的构造函数只有这两种:
Integer(int value)  构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer(String s)   构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。

看我的代码:
  1. class DEMO
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 Integer i = new Integer(23);
  6.                 System.out.println( i.MAX_VALUE);
  7.                 System.out.println(Integer.MAX_VALUE);
  8.         }
  9. }
复制代码
运行结果一致。搞定~~


作者: 柳 德 彬    时间: 2013-3-24 21:21
Integer没有不带参数的构造函数,必须加上int或string类型的参数。
Integer i = new Integer(1);
System.out.println( i.MAX_VALUE);

作者: michaelchen    时间: 2013-3-24 22:11
    public static void main(String[] args)
            {
                  //Integer i = new Integer();试图new一个Integer对象,殊不知Integer无次构造函数
                    //System.out.println( i.MAX_VALUE); 为什么这样不行啊  ,都没有这样的构造函数,怎么可以呢?
                            System.out.println(Integer.MAX_VALUE);

            }




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2