龙空技术网

今天了解一下基本数据类型!

特瑞wang 174

前言:

此刻朋友们对“float类型数据范围”可能比较着重,你们都想要知道一些“float类型数据范围”的相关内容。那么小编同时在网上网罗了一些有关“float类型数据范围””的相关内容,希望同学们能喜欢,各位老铁们一起来了解一下吧!

整数类型

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

十进制

十进制是Java语言默认的数制,所以使用正常的表示形式,例如,120、0、-127、3

注意: 不能以 0 作为十进制数的开头( 0 除外)。

八进制

八进制的表现形式以最高位的数字0做区分,如果最高位不是0,那么Java将把它解释为十进制,否则解释为八进制。例如,0123(转化成十进制数为83)、-0123(转化成十进制数为-83)。

说明:八进制的最大单个数字是 7 , 7 再加 1 就是 10 ,它和十进制的 8 是相等的。八进制的字面量包括“ 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 ”。例如, 0123 (转化成十进制数为 83 )、 -0123 (转化成十进制数为 -83 )

注意: 八进制必须以 0 开头。

十六进制

十六进制的表现形式是在数的最高位添加“0x”标识,其中“x”字符不区分大小写。例如,0x25(转化成十进制数为37)、0Xb01e(转化成十进制数为45086)。

说明:十六进制主要用于二进制的简化表达方式,十六进制的1位数字可以转换成4位二进制数字。超出9的数字在十六进制中以字母表示,其字面量包括“0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F”,其中“A~F”分别代码十进制的“10~15”。例如:0x25(转化成十进制数为37)、0Xb01e(转化成十进制数为45086)

注意:十六进制必须以0X或0x开头。

整型变量根据它在内存中所占大小的不同,可分为byte、short、int和long4种类型。它们具有不同的取值范围,如表1所示。

表1 整型数据类型

数据类型

内存空间(8位等于1字节)

取值范围

byte 8位-128~127

short 16位-32768~32767

int 32位-2147483648~2147483647

long 64位-9223372036854775808~9223372036854775807

下面以int型变量为例,介绍整型变量的定义格式。

实例 定义int型变量,实例代码如下:

int m; //定义int型变量m

int x,y; //定义int型变量x,y

int a = 450,b = -462; //定义int型变量a,b并赋给初值

在定义以上4种类型变量时,要注意变量的值不能超过变量所能接受的最大值与最小值,否则会出现错误。Java默认的整数类型是int,如果要标记整数是long类型,必须在数字末尾添加字母L或l(小写的L)。例如 long num= 2147483650L。

实例 在项目中创建类Number,在主方法中创建不同数值型变量,并将这些变量相加,将和输出。

public classNumber { //创建类

publicstatic voidmain(String[] args) { //主方法

bytemybyte = 124; //声明byte型变量并赋值

shortmyshort = 32564; //声明short型变量并赋值

intmyint = 45784612; //声明int型变量并赋值

longmylong = 46789451; //声明long型变量并赋值

longresult = mybyte+myshort+myint+mylong; //获得各数相加后的结果

System.out.println("结果为:"+result); //将以上变量相加的结果输出

}

}

程序行结果如图1所示。

图1 实例的运行结果

浮点类型

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

浮点型数据类型

数据类型

内存空间(8位等于1字节)

取值范围

float 32位 1.4E-45~3.4028235E38

double 64位 4.9E-324~1.7976931348623157E308

Java语言默认使用double双精度类型的浮点数,就像int是默认的整数类型一样。如果将实数赋值给float类型的变量,则需要在实数末尾添加F或f作为后缀,否则被认为是double类型数值。

例 定义浮点类型变量,代码如下:

double sum=3799.39; // 双精度是默认浮点类型

double length=156.34D; // 双精度可以添加D标识

float price=34.50F; // 单精度需要添加F标识

double length1=156.34d; // 双精度可以添加d标识

float price1=34.50f; // 单精度需要添加f标识

System.out.println("sum="+sum); //输出结果为:sum=3799.39

System.out.println("length="+length); //输出结果为:length=156.34

System.out.println("price="+price); //输出结果为:price=34.5

System.out.println("length1="+length1); //输出结果为:length1=156.34

System.out.println("price1="+price1); //输出结果为:price1=34.5

字符类型

1.char型

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

使用char关键字可定义字符变量。

例 声明字符型变量,实例代码如下:

charx ='a';

由于字符a在unicode表中的排序位置是97。因此,允许将上面的语句写成:charx = 97;

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

例 在项目中创建类Gess,编写如下代码,实现将unicode表上某些位置上的字符以及一些字符在unicode表中的位置在控制台上输出。

运行结果如图1所示

图1 实例的运行结果

2.转义字符

转义字符是一种特殊的字符变量。转义字符以反斜线“\”开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”。例如,printf函数的格式串中用到的“\n”就是一个转义字符,意思是“回车换行”。Java中转义字符如表1所示。

转义字符含义

\ddd

1到3位8进制数据所表示的字符,如:\456\dxxxx

4位16进制所表示的字符,如:\0052 \’单引号字符 \\反斜杠字符

\t垂直制表符,将光标移到下一个制表符的位置\r回车\n换行\b退格\f换页

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

例,分别为字符变量c1赋值为'\\'、字符变量c2赋值为'\''、字符变量c3赋值为'\115'、字符变量c4赋值为'\u0052',字符变量c5赋值为'\u2605',然后输出。

char c1='\\'; //为变量c1赋值转义字符“\\”

char c2='\''; //为变量c2赋值转义字符“\'”

char c3='\115'; //为变量c3赋值转义字符“\115”表示的字符

char c4='\u0052'; //为变量c4赋值转义字符“\u0052”表示的字符

char c5='\u2605'; //为变量c5赋值转义字符“\u2605”表示的字符

System.out.println(c1); //输出结果为:\

System.out.println(c2); //输出结果为:'

System.out.println(c3); //输出结果为:M

System.out.println(c4); //输出结果为:R

System.out.println(c5); //输出结果为:★

图2 控制台输出结果

例在Java中,对字符变量进行如下的赋值也是合法的:

char char1='B'+1; //将字符常量值'B'与十进制整数1相加的结果赋给字符变量char1

charchar2='B'+'1'; //将两个字符常量值'B'与'1'相加的结果赋给字符变量char2

charchar3=24+76; //将两个十进制整数24与76相加的结果赋给字符变量char3

charchar4='n'-32; //该操作将得到大写的字母N,'N'+32将得到小写的字母n

System.out.println(char1); //输出结果为:C

System.out.println(char2); //输出结果为:s

System.out.println(char3); //输出结果为:d

System.out.println(char4); //输出结果为:N

图3 控制台输出结果

例 在输出语句中使用转义字符,实例代码如下:

publicclass Temp {

publicstaticvoidmain(String[] args) {

System.out.println("\102"); // 八进制编码的字符

System.out.println("\u0042"); // 十六进制编码的字符

System.out.println("苹果\t橘子\t香蕉"); // 使用制表符分割

System.out.println("\\字符是反斜杠"); // 输出反斜杠

System.out.println("\n换行字符"); // 输出回车

}

}

布尔类型

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

例定义布尔型变量,可通过关键字boolean来定义。定义方法如下:

boolean b; //定义布尔型变量b

boolean b1,b2; //定义布尔型变量b1,b2

例分别为布尔型变量married赋值为false,alive赋值为true,然后输出。

booleanmarried=false;

boolean alive=true;

System.out.println("已婚:"+married); //输出结果为:false

System.out.println("生命:"+alive); //输出结果为:true

在控制台中的运行结果如图1所示。

标签: #float类型数据范围 #实数编码包括哪些类型 #double最大数值