芯灵思SinlinxA33开发板安卓开发-java语言基础(一)

今日头条

1184人已加入

描述

基本数据类型

逻辑类型 整数类型  字符类型 浮点类型 数据转换 输入和输出数据

 

 

1.逻辑类型

 

Java语言一共有8种基本数据类型,分别是:

booleanbyteshortintlongfloatdoublechar

8种基本数据类型在习惯上可以分为以下四大类型:

逻辑类型:boolean

整数类型:byteshortintlong

字符类型:char

浮点类型:floatdouble

 

2.整数类型

 

1int

常量:1236000(十进制),077(八进制),0x3ABC(十六进制)。

变量:使用关键字int来声明int型变量,声明时也可以赋给初值,

例如:int x= 12,平均=9898,jiafei;

对于int型变量,内存分配给4个字节(byte),占32位。

2byte

常量:Java中不存在byte型常量的表示法,但可以把一定范围内的int型常量赋值给byte型变量。

变量:使用关键字byte来声明byte 型变量

例如:byte x= -12,tom=28,漂亮9;

对于byte型内存分配给1个字节,占8位。

3 short

常量:和byte型类似,Java中也不存在short型常量的表示法,但可以把一定范围内的int型常量赋值给short型变量。

变量:使用关键字short来声明short型变量

例如:short x=12,y=1234;

对于short型变量,内存分配给2个字节,占16位。

4. long

常量:long型常量用后缀L来表示,例如108L(十进制),07123L(八进制)、0x3ABCL(十六进制)

变量:使用关键字long来声明long型变量,

例如:long width=12L,height=2005L,length;

对于long型变量,内存分配给8个字节,占64位。

1.     字符类型

1. 常量:‘A’‘b’‘?’‘!’‘9’‘\t’等,即用单引号扩起的Unicode表中的一个字符。

2. 变量:使用关键字char来声明char型变量,

例如:char ch=‘A’,home=‘’,handsome=‘’;

对于char型变量,内存分配给2个字节,占16位。

3. 转意字符常量:有些字符(如回车符)不能通过键盘输入到字符串或程序中,就需要使用转意字符常量,

例如:\n(换行),\b(退格),\t(水平制表), \‘(单引号),\“(双引号),\(反斜线)等。

4. 要观察一个字符在Unicode表中的顺序位置,可以使用int型显示转换,如(int)'a'int p='a'

5. 如果要得到一个0~65536之间的数所代表的Unicode表中相应位置上的字符必须使用char型显示转换。

5.浮点类型

1. float

常量:453.5439f21379.987F231.0f(小数表示法),2e40f21040次方,指数表示法)。需要特别注意的是:常量后面必须要有后缀“f”“F” 

变量:使用关键字float来声明float型变量,

例如:float x=22.76f,tom=1234.987f,weight=1e-12F;

精度:float变量在存储float型数据时保留8位有效数字,实际精度取决于具体数值。

对于float型变量,内存分配给4个字节,占32位。

 2. double

常量:2389.539d2318908.9870.05(小数表示法),1e-90110-90次方,指数表示法)。对于double常量,后面可以有后缀“d”“D”,但允许省略该后缀。

变量:使用关键字double来声明double型变量,

例如:double height=23.345,width=34.56D,length=1e12;

对于double型变量,内存分配给8个字节,占64位。

精度:double变量在存储double型数据时保留16位有效数字,实际精度取决于具体数值。

数据转换

Java中数据的基本类型(不包括逻辑类型)按精度从排列:

byte  short  char int  long  float  double

 

★当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。例如:

    float x=100;

 

★当把级别高的变量的值赋给级别低的变量时,必须使用显示类型转换运算。显示转换的格式:(类型名)要转换的值;

  例如

    int x=(int)34.89;

 

★当把一个int型常量赋值给一个byteshort型变量时,不可以超出这些变量的取值范围,否则必须进行类型转换运算;例如,常量128的属于int型常量,超出byte变量的取值范围,如果赋值给byte型变量,必须进行byte类型转换运算(将导致精度的损失),如下所示:

     byte a=(byte)128;

 

★另外一个常见的错误就是把一个double型常量赋值给一个float型变量时没有进行强制转换,如下所示:

     float x=12.4;

输入和输出数据

1、输入数据

ScannerJDK1.5新增的一个类,可以使用Scanner类创建一个对象:

Scanner reader=new Scanner(System.in);

reader对象调用下列方法,读取用户在命令行输入的各种基本类型数据:

nextBoolean()nextByte() nextShort() nextInt() nextLong()nextFloat()nextDouble()

上述方法执行时都会堵塞,程序等待用户在命令行输入数据回车确认。

2、输出数据

System.out.println()System.out.print()可输出串值、表达式的值,二者的区别是前者输出数据后换行,后者不换行。

允许使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置一起输出,如:

System.out.println(m+"个数的和为"+sum);

System.out.println(“:”+123+“大于”+122) 

JDK1.5新增了和C语言中printf函数类似的数据输出方法,该方法使用格式如下:

System.out.printf("格式控制部分",表达式1,表达式2表达式n)

格式控制部分由格式控制符号:%d%c%f%s和普通的字符组成,普通字符原样输出。格式符号用来输出表达式的值。

%d:输出int类型数据值.

%c:输出char型数据.

%f:输出浮点型数据,小数部分最多保留6.

%s:输出字符串数据。

输出数据时也可以控制数据在命令行的位置,例如:

%md:输出的int型数据占m  %m.nf:输出的浮点型数据占m列,小数点保留n位。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分