Integer和int的区别?在什么时候用Integer和什么时候用int

/*
 * int是java提供的8种原始数据类型之一。Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。int的默认值为0,
 * 而Integer的默认值为null
 * ,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况,例如,要想表达出没有参加考试和考试成绩为0的区别
 * ,则只能使用Integer
 * 。在JSP开发中,Integer的默认为null,所以用el表达式在文本框中显示时,值为空白字符串,而int默认的默认值为0,所以用el表达式在文本框中显示时
 * ,结果为0,所以,int不适合作为web层的表单数据的类型。
 * 在Hibernate中,如果将OID定义为Integer类型,那么Hibernate就可以根据其值是否为null而判断一个对象是否是临时的
 * ,如果将OID定义为了int类型,还需要在hbm映射文件中设置其unsaved-value属性为0。
 * 另外,Integer提供了多个与整数相关的操作方法,例如,将一个字符串转换成整数,Integer中还定义了表示整数的最大值和最小值的常量。

 */

[java]  view plain  copy
  1. package java基础题目;  
  2.   
  3. /** 
  4.  * 问题:要想表达出没有参加考试和考试成绩为0的区别?我们应该用Integer表示还是用int表示? 
  5.  */  
  6. public class A2015年64日_Integer和int {  
  7.     private static int score;  
  8.     private static Integer score2;  
  9. //  private static boolean ss;  
  10.     public static void main(String[] args) {  
  11.   
  12.         System.out.println("int类型的默认值score2:" + score);// 0  
  13.   
  14.         System.out.println("Integer类型的默认值score:" + score2);// null  
  15.   
  16.         /* 
  17.          * if(score==null){//报错因为score是int类型的不能和null比较 
  18.          *  
  19.          * } 
  20.          */  
  21. //      if(ss==true)  
  22. //      score2 = 0;  
  23.         if (score2 == null) {  
  24.             System.out.println("没有参加考试!!!");  
  25.         } else if (score2 == 0) {  
  26.             System.out.println("考试成绩为0分!!!");  
  27.         } else {  
  28.             System.out.println("考试成绩为" + score2);  
  29.         }  
  30.           
  31.         integer();  
  32.     }  
  33.   
  34.     public static void integer() {  
  35.         String string = "12345";  
  36.         Integer i = Integer.parseInt(string);// 把字符串解析为Integer类型  
  37.         Integer max = Integer.MAX_VALUE;  
  38.         Integer min = Integer.MIN_VALUE;  
  39.         System.out.println("Integer.parseInt(string)=" + i);  
  40.         System.out.println("integer的最大值:"+max+",最小值:"+min);  
  41.     }  
  42. }  
  • 41
    点赞
  • 126
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: integerint 都是表示整数的数据类型,但是 integer 通常用于数据库中,而 int 则是编程语言中常用的数据类型。在某些编程语言中,int 可能只表示特定大小的整数,例如 32 位或 64 位整数,而 integer 则可以表示更大范围的整数。但是在其他编程语言中,这两个术语可以互换使用。总的来说,它们的区别取决于具体的上下文和使用环境。 ### 回答2: 在计算机编程中,integerint(即整数)都是用来表示整数的数据类型。它们的区别在于integer是一种抽象的数据类型,而int是一个具体的数据类型。 在C语言中,int是一种固定字长的整数类型,通常为32位或64位。int的取值范围、字节数等与系统硬件和编译器有关,因此在不同的系统中可能会有所不同。同时,int是有符号的整数类型,可以表示正数、负数和零。 而在其他编程语言中,如Java、Python等,int也是一种数据类型,但是它的范围和字节数通常是固定的,与系统硬件和编译器无关。同时在这些语言中,所谓的integer是一个更为抽象的数据类型,用来表示任意精度的整数,即可以表示任意大的整数,不受字节数和硬件限制。 总的来说,int是一种具体的数据类型,而integer是一种抽象的数据类型,用来表示任意精度的整数。在编程中,根据需要选择合适的数据类型来表示整数,以确保程序的正确性和效率。 ### 回答3: Integerint 是两个非常相似的术语,都用来描述一个整数类型。它们的区别在于 Integer 是一个 Java 类,而 int 是一种 Java 基本数据类型。 在 Java 中,基本数据类型是不同于对象类型的一种类型。这些基本类型包括 int、boolean、byte、long、short、char、double 和 float。这些类型都有一个预定义的大小和值范围,它们可以被直接存储在内存中,而无需创建任何对象。 Integer 类则是一个包装器类,它允许开发人员将 int 这样的基本类型转化为对象。这有助于在一些情况下处理数字变量时需要更高级的功能,比如将一个整数转化为字符串。 尽管 Integer 类与 int 类型很相似,但它们之间还是有一些差别的。比如,Integer 类可以为 null,而 int 类型不能为 null。此外,基本类型通常比包装器类更快,因为它们可以直接存储在内存中,而不需要先创建一个对象。 因此,当你在编写 Java 代码时,要根据实际情况来决定什么时候使用 Integer,什么时候使用 int。如果你需要一个能够为 null 的整数类型或者需要一些高级的操作,那么就使用 Integer。如果你只需要处理一个简单的整数变量,那么就使用 int

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值