Java学习之旅(二):基本数据类型

Java中有8种基本数据类型来存储数值、字符和布尔值。其中数值型又分为整数类型和浮点类型,其中整数类型有byte、short、int和long四种类型,浮点类型有float和double两种类型。

整数类型

整数类型用来存储整数值,即为没有小数部分的数值,可以是正数,也可以是负数。整型数据在Java中有3种表示形式,分别是十进制、八进制和十六进制。

十进制:如120、0、-127。除了数字0,不能以0作为其他任何十进制数的开头。

八进制:如0123(相当于十进制的83)、-0123(十进制的-83)。八进制的数必须以0开头。

十六进制:如0x25(十进制37)、0Xb01e(十进制45086)。十六进制的数必须以0X或0x开头。

整型数据根据它所占内存的大小,分为byte、short、int和long四种类型,它们具有不同的取值范围:

整型数据类型
数据类型内存空间(8位等于1字节)取值范围
byte8位(1字节)-128~127
short16位(2字节)-32768~32767
int32位(4字节)-2147483648~2148473647
long64位(8字节)-9223372036854775808~9223372036854775807
int x;					//定义int型变量x
int x,y;				//定义int型变量x和y
int x = 123, y = -100;			//定义int型变量x和y并赋初值

在定义以上四种类型变量时,要注意变量的取值范围,超出相应范围时就会报错。对于long型数据,若赋给的初值大于int型变量的最大值或小于int型变量的最小值,则需要在数字后加L或l,表示该数值为长整型,如long num = 2148473648L。

public class test {

	public static void main(String[] args) {
		
		byte myByte = 124;
		short myShort = 32767;
		int myInt = 999999;
		long myLong = 2222222222L;
		long result = myByte + myShort + myInt + myLong;
		System.out.println(result);

	}
}

浮点类型

浮点类型表示有小数部分的数字。Java语言中把浮点类型分为单精度浮点类型(float)和双精度浮点类型(double),它们具有不同的取值范围。

浮点型数据类型
数据类型内存空间取值范围
float32位1.4E-45~3.4028235E38
double64位4.9E-324~1.7976931348623157E308

在默认情况下,小数都被看做double型,若使用float型小数,则需要在小鼠后面添加F或f。可以使用后缀d或D来明确表明这是一个double型数据,不加d不会出错,但声明float型变量时如果不加f,系统会默认变量是double类型,从而会出错。

float f = 132.123f;
double d1 = 132.123;
double d2 = 456789.12345d;

字符类型

char型

字符类型用于存储单个字符,占用16位(2个字节)的内存空间。在定义字符型变量时,要以单引号表示,如's'表示一个字符,而"s"表示一个字符串,虽然只有一个字符,但由于使用了双引号,它仍然表示字符串,而不是字符。

char x = 'a';
char x = 97;

由于字符a在unicode表中排序位置是97,所以上面的两种定义x字符的方法都是正确的。

同C语言和C++一样,Java语言也可以把字符作为整数对待。由于unicode编码采用无符号编码,可以存储65536个字符(0x0000~0xffff),所以Java中的字符几乎可以处理所有国家的语言文字。若想得到一个0~65536之间的数所代表的unicode表中相应位置上的字符,也必须使用char型显示转换。

public class test {

	public static void main(String[] args) {
		
		char word1 = 'd';
		char word2 = '@';
		int p1 = 12345;
		int p2 = 23456;
		System.out.println("d在unicode表中的顺序位置是:" + (int)word1);
		System.out.println("@在unicode表中的顺序位置是:" + (int)word2);
		System.out.println("unicode表中第12345位的是:" + (char)p1);
		System.out.println("unicode表中第23456位的是:" + (char)p2);
		
	}

}

转义字符

转义字符是一种特殊的字符变量,它以反斜杠"\"开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”。

转义字符
转义字符含义
\ddd1~3位八进制所表示的字符,如\123
\uxxxx4位十六进制数据所表示的字符,如\u0012
\'单引号字符
\\反斜杠字符
\t垂直制表符,将光标移动到下一个制表符的位置
\r回车
\n换行
\b退格
\f换页

将转义字符赋值给字符变量时,与字符常量值一样需要使用单引号。

		char c1 = '\\';				//将转义字符'\\'赋值给变量c1
		char c2 = '\u2605';			//将转义字符'\u2020'赋值给变量c2
		System.out.println(c1);
		System.out.println(c2);

布尔类型

布尔类型又称逻辑类型,通过关键字boolean来定义布尔类型变量,只有true和false两个值,分别代表布尔逻辑中的“真”和“假”。布尔值不能与整数类型进行转换,。布尔类型通常被用在流程控制中作为判断条件。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值