Java八种基本类型(byte、short、int、long、浮点数、char、boolean、基本类型转换)
来源:互联网 发布:ed2k for mac下载工具 编辑:程序博客网 时间:2024/06/08 03:25
(1)常用基本类型汇总
八种基本类型汇总
八种基本类型的字节空间和应用场景
类型名称
字节空间
应用场景
byte
1Byte
字节数据
short
2Byte
短整数
int
4Byte
普通整数
long
8Byte
长整数
float
4Byte
浮点数
double
8Byte
双精度浮点数
char
2Byte
一个字符
boolean
1Byte
逻辑变量(true,flase)
(2)byte类型
基本介绍:
byte数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是-128(-2^7);
最大值是127(2^7-1);
默认值是0;
例如:byte bt = 120;
(3)short类型
基本介绍:
short数据类型是16位、有符号的以二进制补码表示的整数
最小值是-32768(-2^15);
最大值是32767(2^15 - 1);
默认值是0;
例如: short st = 32700;
(4)Int类型
基本介绍:
Int是最常用的整数类型。一个int类型的变量占用4个字节(32位),最大表示范围为:-2^31~2^31-1,即-2147483648~2147483647。
默认值是0;
整型变量的注意事项:
整数的直接量的类型默认为int类型,如果直接写出的整数超过了int的表达范围,编译报错;
int one = 80000000000000000000000;//超出范围,编译错误
除了通常的十进制书写形式,整数的直接量也经常写16进制的相识(0X或0x开头)或者8进制形式(O开头);
int two=529; //10进制
int three=0x347a; //16进制
int four=030; //8进制
两个整数相除,会舍弃小数的部分(不是四舍五入),结果也是整数;
int data1 = 49;
int data2 = 79;
int dataT = data1/data2;//dataT结果为0,因为49除以79的整数部分为0
整数运算的溢出:两个整数进行运算时,其结果可能会超过整数的范围而溢出。正数过大而产生的溢出,结果为负值;负整数过大而产生的溢出,结果为正数
int number=2147483647;
int score=-2147483648;
number= number+1;//结果为-2147483648
score = score -1; //结果为2147483647
(5)Long类型
基本介绍:
一般如果int类型的范围不够,可以使用long类型,一个long类型的变量占用8个字节(64位),最大表示范围为:-2^63~2^63-1,即-9223372036854775808~223372036854775807
默认值是0L;
注意:如果用long类型,则需要以L或l结尾
long gg = 44;//错误
long gg = 44L;//正确
long类型变量的典型应用场景:
超过int类型范围的数据,可以用long类型;
比如:long yy = 3147483647L;
(6)浮点数类型
基本介绍:
浮点数,就是小数,包括float和double;
float默认值是0.0f;
double默认值是0.0d;
double类型的精度值是float类型的两倍,一般场合使用double类型。
例如:double tt = 4.7;
浮点数的写法:
通常写法,如:3.68、.3
科学计数法,如:2.17E2
默认的浮点为double类型,如果需要表示float类型的直接量,需要加”f”或”F”后缀。例如:
float ff=6.29; //编译错误,应该写成6.29f
(7)char类型
基本介绍:
char类型事实上是一个16位无符号整数,这个值是对应字符的编码;
Java字符串类型采用Unicode字符集编码。Unicode是世界通用的长度字符集,所有的字符串都是16位;
Char类型变量赋值,可以采用如下三种形式:
字符:形如’A’,变量中实际存储的是该字符的Unicode编码(无符号整数值),一个char型变量只能存储一个字符。
整型数据:范围在0~65535之间的整数,变量中实际存储的即该整数值,但表示的是该整数值所对应的Unicode字符。
Unicode形式:形如’\u0041’,Unicode字符的16进制形式。
例如:char cr1= 705;
char cr2=’N’;
char cr3=’\u0031’;
特殊的字符:转义字符
字符
代表的含义
\n
换行 (0x0a)
\r
回车 (0x0d)
\f
换页符(0x0c)
\b
退格 (0x08)
\s
空格 (0x20)
\t
制表符
\"
双引号
\'
单引号
\\
反斜杠
\ddd
八进制字符 (ddd)
\uxxxx
16进制Unicode字符 (xxxx)
(8)boolean类型
基本介绍:
boolean类型适用于逻辑运算,表示某个条件是否成立。一般用于程序的流程控制;
boolean类型只允许取值true或false,true表示条件成立而false表示条件不成立。
boolean默认值是false;
例如:int a = 9;
int b = 10;
Boolean isBig = b>a;//输出为true
(9)类型之间的转换
基本介绍:
不同的基本类型直接可以相互转换
自动类型转换(隐式类型转换):从小类型到大类型可以自动完成。类型的大小关系如下:
强制转换:从大类型到小类型需要强制转换符,但这样转换有可能会造成精度损失或溢出。
int onef=654;
int twof=957;
long threef= onef + twof; //自动将int转换为long
long numberf=9967L;
int af=(int) numberf; //需要强制转换符,由于9967在int范围内,没有产生溢出
long scoref=5147483647L;
int bf=(int) scoref; //会产生溢出,结果为0
double ttf=7.55684954444444444;
float rrf=(float) ttf;//会造成精度的损失,结果为7.5568495
几种特殊转换:
多种基本类型参与的表达式运算中,运算结果会自动的向较大的类型进行转换;比如:
int a = 4;
int b = 10;
double c = a/b;//结果为0.4,自动转换为double类型
byte、char、short三种类型实际存储的数据都是整数,在实际使用中遵循如下规则:
Int直接量可以直接赋值给byte、char和short,只要不超过其表示范围。
byte、char、short三种类型参与运算时,先一律转换成int类型再进行运算。
(10)代码实例
package com.example.var;
public class DataType {
public static void main(String[] args) {
byte bt = 120;
System.out.println(bt);
short st = 32700;
System.out.println(st);
int two=529; //10进制
int three=0x347a; //16进制
int four=030; //8进制
System.out.println(two);
System.out.println(three);
System.out.println(four);
int data1 = 49;
int data2 = 79;
int dataT = data1/data2;
System.out.println(dataT);
int number=2147483647;
int score=-2147483648;
number= number+1;//结果为-2147483648
score = score -1; //结果为2147483647
System.out.println(number);
System.out.println(score);
long gg= 44L;//正确
long yy = 3147483647L;
System.out.println(yy);
double tt = 4.7;
System.out.println(tt);
char cr1= 705;
char cr2='N';
char cr3='\u0031';
System.out.println(cr3);
int a = 9;
int b = 10;
Boolean isBig = b>a;
System.out.println(isBig);
int onef=654;
int twof=957;
long threef= onef + twof; //自动将int转换为long
long numberf=9967L;
int af=(int) numberf; //需要强制转换符,由于9967在int范围内,没有产生溢出
long scoref = 5147483647L;
int bf=(int) scoref; //会产生溢出,结果为0
System.out.println(scoref);
double ttf=7.55684954444444444;
float rrf=(float) ttf; //会造成精度的损失,结果为7.5568495
System.out.println(rrf);
}
}
以上代码的GitHup地址:https://github.com/gongyunit/j2eecode
- Java八种基本类型(byte、short、int、long、浮点数、char、boolean、基本类型转换)
- C语言中基本类型char、short、int、long等类型的取值范围
- C语言中基本类型char、short、int、long等类型的取值范围
- java-int&short-byte类型转换问题
- c++基本数据类型基本类型: 整型: 短整型: short int 整型: int 长整型:long int 字符型:char(分为有符号和无符号,默认有符号) 浮点型:
- java对byte,short,char,int,long运算时自动类型转化情况说明
- java对byte,short,char,int,long运算时自动类型转化情况说明
- byte 和boolean,int,String,char,short,long之间的转换
- 08.java语言基础-整数类型(byte-short-int-long)
- Java基本类型转换(Primitive Data Type Casting) int/byte & char
- 基本数据类型:Byte、Short、Int、Long
- 基本类型byte&char
- c/c++基本类型sizeof:short,unsigned short,int,unsigned int,long,unsigned long,long long,unsigned long lon
- java可以做switch case的只有int类型,和可以自动类型转换为int的byte, char,short
- char,short,int ,long , long long类型的范围
- 类型转换问题(java会把byte,short和char的运算操作转换为int类型即低精度自动向高精度转换)
- java 基本类型转换 字符char 转 数字int
- short、int、char类型组合成long类型
- POJ2159
- 用vs编写和调试linux C++程序
- android 自定义属性,分享一个自适应容器,多用于显示图片,保证图片不变形
- 正向代理与反向代理的区别
- 搭建第一个HelloWorld项目
- Java八种基本类型(byte、short、int、long、浮点数、char、boolean、基本类型转换)
- zabbix监控linux分区大小
- 容器的扩展-2
- 文章标题java获取时间的方法及Date与String类型的转换
- 字符编码的前世今生
- React中字符串的连接
- Word 2010 操作点滴
- RBAC详情介绍
- Linux常用命令