编程语言
首页 > 编程语言> > java答疑(2)

java答疑(2)

作者:互联网

 

1.java包含哪两类数据类型,其中基本数据类型的取值范围和默认值时多少?

  数据类型可划分为基本类型和复合类型

基本类型:

  整数类型:byte(8位),short(16),int(32) , long(64)

  浮点类型:float ,double

  字符类型:char(16位无符号整数,使用Unicode字符集)

  布尔类型:boolean(值为true或false,C++ 的布尔类型是bool)

复合数据类型:

  class(类),interface(接口),数组

数据类型 默认值  取值范围
 byte  -2^7~2^7-1
 short  -2^15~2^15-1
int   -2^31~2^31-1
 long

0L 

 -2^63~2^63-1
float  0.0f     ——
double  0.0d     —— 
char  \u000     —— 
boolean  false     —— 

 

 2.Java在什么情况会发生整型溢出?请举例说明,并给出解决方案。

  Java进行两个数字的数学运算时容易发生整形溢出。这主要是因为int类型的取值范围导致的,举例:

public static void main(String[] args) {
      int m = Integer.MAX_VALUE/2+1; //1073741824
      int n = Integer.MAX_VALUE/2+1;
      int overflow = m + n;
      System.out.println(overflow); //-2147483648
}

 这段代码便存在整型溢出。

解决方案:将overflow定义为long,并对m+n进行强转。

 

3.Java基本类型的包装类分别是哪些?其高频区间数据缓存范围分别是什么?请选择一种包装类型编程验证其数据缓存特性。

  

 

标签:java,int,数据类型,long,答疑,类型,Java,overflow
来源: https://www.cnblogs.com/averyfork/p/15405036.html