概述
java基础
- 八种基本类型
- 装箱和拆箱
- 面试题目
- 1.String 是基础类型吗?
- 2.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1+=1;有什么错?
- 3.Int 与 Integer 区别
- 4.String 转出 int 型, 判断能不能转?如何转?
- 本文参考
八种基本类型
布尔型:
boolean
字符型:
char
整数型:
byte, short, int, long
浮点数型:
float, double
装箱和拆箱
自动装箱是 Java 编译器在基本数据类型和对应的对象包装类型之间做的一个转化。
比如:把 int 转化成 Integer, double 转化成 Double, 等等。 反之就是自动拆箱。
原始类型: boolean, char, byte, short, int, long, float, double
封装类型: Boolean, Character, Byte, Short, Integer, Long, Float, Double
别人详细版解析原理–http://www.cnblogs.com/dolphin0520/p/3780005.html
面试题目
1.String 是基础类型吗?
基本数据类型包括上面八种:
分别是byte、short、int、char、long、float、double和boolean。
所以String不是基本数据类型。
2.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1+=1;有什么错?
1) 对于 short s1=1;s1=s1+1 来说, 在 s1+1 运算时会自动提升表达式的类型为 int,那么将 int 赋予给 short 类型的变量 s1 会出现类型转换错误。
2) 对于 short s1=1;s1+=1 来说 +=是 java 语言规定的运算符, java 编译器会对它进行特殊处理, 因此可以正确编译。
3.Int 与 Integer 区别
1、Integer是int的包装类,int则是java的一种基本数据类型
2、Integer变量必须实例化后才能使用,而int变量不需要
3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值
4、Integer的默认值是null,int的默认值是0
延伸:
关于Integer和int的比较
1、由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变量永远是不相等的(因为new生成的是两个对象,其内存地址不同)。
public class function {
public static void main(String[] args){
Integer i=new Integer(100);
Integer j=new Integer(100);
System.out.println(i==j);
}
}
结果为
2、Integer变量和int变量比较时,只要两个变量的值是向等的,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较)
public class function {
public static void main(String[] args){
Integer i=new Integer(100);
int j=100;
System.out.println(i==j);
}
}
结果为
下面链接内容里更具体
具体出处:果冻迪迪←点击看原文
4.String 转出 int 型, 判断能不能转?如何转?
可以转, 得处理异常 Integer.parseInt(s) 主要为 NumberFormatException:1) 当
你输入为字母时, 也就是内容不是数字时, 如 abcd 2) 当你输入为空时 3) 当你输入超出
int 上限时 Long.parseLong("123")转换为 long
本文参考
这里面也有一些面试题目https://blog.csdn.net/daidaineteasy/article/details/51088269
最后
以上就是务实爆米花为你收集整理的01-Java的8种基本数据类型 装箱 拆箱八种基本类型装箱和拆箱面试题目本文参考的全部内容,希望文章能够帮你解决01-Java的8种基本数据类型 装箱 拆箱八种基本类型装箱和拆箱面试题目本文参考所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复