int默认值为0,Integer默认值为null
前提概要
Java为每个原始类型提供了封装类,Integer是java为int提供的封装类。
int的默认值为0,而Integer的默认值为null,即Integer可以区分出未赋值和值为0的区别,int则无法表达出未赋值的情况。
代码示例
public class TestJava {public static int i;public static Integer j;public static void main(String[] args) {System. out.println(i);System. out.println(j);}
}
输出:
0
null
由此看出int的默认值为0,而Integer的默认值为null。那如果将i和j定义到main方法里呢?
public class TestJava {public static void main(String[] args) {int i;Integer j;System. out.println(i);System. out.println(j);}}
运行:
为啥这样就失败了呢?查阅static关键词后发现:
将一个方法声明为静态方法,通常是为了方便在不创建对象的情况下调用。那我们可以理解为将方法声明为静态就可以出创建对象,int是基础类型,integer是包装类 加了static就省略了new了,非静态变量需要初始化才能输出值
另外,Java静态变量初始化遵循以下规则:
1.静态变量会按照声明的顺序先依次声明并设置为该类型的默认值,但不赋值为初始化的值。
2.声明完毕后,再按声明的顺序依次设置为初始化的值,如果没有初始化的值就跳
链接:JAVA关于对象创建过程中初始化和声明顺序问题
int默认值为0,Integer默认值为null相关推荐
- python字符串和List:索引值以 0 为开始值,-1 为从末尾的开始位置;值和位置的区别哦...
String(字符串) Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符. 字符串的截取的语法格式如下: 变量[头下标:尾下标] 索引值以 0 为开 ...
- c语言malloc返回值,malloc(0)的返回值
很多嵌入式c面试,会问到这个问题,我也就百度了下,集合几位网友的分析,记录下来,便于我自己随时查看 当malloc分配内存时它除了分配我们指定SIZE的内存块,还会分配额外的内存来存储我们的内存块信息 ...
- androd报错Attempt to invoke virtual method 'int java.lang.Integer.intValue()' on a null object refere
每个报错会有不同的情况:t我这里的情况: 出错的是这行代码,三目运算符来判断这个值是否等于0 tvProductAccount_isGift.setText((editProductAccount.g ...
- python如何返回多个值_python- 如何返回多个值 | 学步园
如何写一个返回多个值的函数 函数的return 语句只能返回一个值,可以是任何类型. 因此,我们可以"返回一个 tuple类型,来间接达到返回多个值 ". 例: x 除以 y ...
- Mybatis中 Integer 值为0时,默认为空字符串的解决办法
问题 需求是查询级别为0的用户 User对象里的level字段的值为0,查询时居然没有查到为level为0的用户. <select id="selectSelective" ...
- java integer的默认值_int和Integer的默认值
群里有一个小伙伴发了一段和下面差不多的代码啊,问了一个问题,代码如下: public static voidmain(String[] args) { doem01 doem01= newdoem01 ...
- JAVA中stacksize是什么意思_【Java Thread StackSize】如何理解Java中Thread构造器中的stackSize的默认值为0?...
Thred的stackSize默认值 e-mail:rolltion.zhang@foxmail.com 前言:为什么要研究默认值 在Java和Java开发框架中,我们经常会遇到一系列的默认值,尽管他 ...
- sql 默认值为0_int 默认值为0
在java书中:如果没对int型赋初值,默认是0. 但我们尝试发现并不能通过: public static void main(String[] args) { int i; System.out.p ...
- springboot设置默认值_spring boot jpa存储数据的默认值为java的默认值
问题描述 使用jpa的save方法保存数据后返回的实体类为java数据类型的默认值 问题出现的环境背景及自己尝试过哪些方法 环境背景: 用户新增功能,调用新增接口后根据返回对象的id去查询等级表的等级 ...
最新文章
- 在Apache的POI XWPFRun对象分隔文本行
- 动态获取的图片当做背景,而且图片是小图
- 并发基础(三): java线程优先级小试牛刀
- Python中比元组更好用的namedtuple
- 启动celery后执行任务报错:django.core.exceptions.ImproperlyConfigured
- 2.OD-C++的虚函数表遍历
- Gradle常用配置-版本号自增
- SAP Spartacus的一个问题 - CheckoutStepsSetGuard无法import
- webpack最新版本_webpack小结-开发环境构建优化
- ABB机器人VGT文件_ABB机器人与焊机之间通讯方式
- Linux常用命令——关机重启命令
- 【bzoj5090】组题 分数规划
- Galera Cluster:一种新型的高一致性MySQL集群架构
- 零束银河全栈技术解决方案之数字化体验平台产品篇
- 【VOIP】yate sip客户端直接呼叫
- 扎实干货!PP-Tracking:百度提出实时目标跟踪系统(附源码教程)
- php curl 客户端,php通过curl设置客户端cookie
- 数据分析师的个人修养
- 【壮丽70年·奋斗新时代】宿州:从农业大市转身为“中国云都”
- 乘着爱的翅膀—《爱的教育》读后感—吕中琪