/*
关于java语言当中的整数型:
数据类型 占用空间大小 默认值 取值范围
-------------------------------------------------------------------------------------
byte 1 0 【-128~127】
short 2 0 【-32768~32767】
int 4 0 【-2147483648~2147483647】
long 8 0L
1、java语言当中的“整数型字面值”被默认当做int类型来处理。要让这个“整数型字面值”被当做
long类型来处理的话,需要在“整数型字面值”后面添加1/L,建议使用大写的L。
2、java语言当中的整数型字面值有三种表示方式:
第一种方式:十进制【是一种缺省默认的方式】常用
第二种方式:八进制【在编写八进制整数型字面值的时候需要以0开始】
第三种方式:十六进制【在编写十六进制整数型字面值的时候需要以0x开始】
*/
public class DataTypeTest04
{
public static void main(String[] args){
int a = 10;
int b = 010;//整数型字面值以0开头的,后面那一串数字就是八进制
int c = 0x10;//整数型字面值以0x开头的,后面那一串数字就是十六进制
System.out.println(a);//10
System.out.println(b);//8
System.out.println(c);//16
System.out.println(a + b + c);//34
//123这个整数型字面值是int类型
//i变量声明的时候也是int类型
//int类型的123赋值给int类型的变量i,不存在类型转换
int i = 123;
System.out.println(i);
//456整数型字面值被当做int类型,占用4个字节
//x变量在声明的时候是long类型,占用8个字节
//int类型的字面值456赋值给long类型的变量x,存在类型转换
//int类型转换成long类型
//int类型是小容量
//long类型是大容量
//小容量可以自动转换成大容量,称为自动转换机制。
long x = 456;
System.out.println(x);
//2147483648字面值是int类型,占用4个字节
//y是long类型,占用8个字节,自动类型转换
long y = 2147483647;
System.out.println(y);
//编译错误:过大的整数:2147483648
//2147483648被当做int类型4个字节处理,但是这个字面值超出int类型范围
//long z = 2147483648;
//解决错误
//2147483648字面值一上来当作long类型来处理,在字面值后面添加L
//2147483648L是8个字节的long类型
//z是long类型变量,以下程序不存在类型转换
long z = 2147483648L;
System.out.println(z);
}
}
java数据类型(4)整数型
最新推荐文章于 2023-05-04 09:51:32 发布
本文介绍了Java中整数型数据类型(byte, short, int, long)的占用空间、默认值及取值范围。详细阐述了整数型字面值的默认处理方式为int类型,以及如何通过1/L后缀将其转换为long类型。同时,解释了八进制和十六进制的表示方法,并通过示例展示了不同类型间的自动转换机制。最后,针对整数溢出问题给出了解决方案。
摘要由CSDN通过智能技术生成