2 标识符、关键字和数据类型

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章标识符、关键字和数据类型2.1标识符和关键字2.2常量2.3数据类型2.4数组2.1标识符和关键字用来标识变量名、方法名、类型名、数组名、类名、接口名等的有效字符序列称为标识符。简单地说,标识符就是一个名字。Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字字符。2.1标识符和关键字(续)风格约定:(1)_和$不作为变量名、方法名开头;(2)变量名、方法名首单词小写,其余单词只有首字母大写如anyVariableWorld;(3)接口名、类名首单词第一个字母大写;(4)常量:完全大写;(5)方法名应该使用动词,类名和接口使用名词。2.1标识符和关键字(续)关键字就是Java语言中已经被赋予特定意义的一些单词。不可以把这类词作为标志符来用。Java语言的关键字包括:(1)用于类和接口的声明—class、extends、implements、interface;(2)包引入和包声明—import、package;(3)数据类型—boolean、byte、char、double、float、int、long、short;(4)数据类型的可选值—false、true、null;2.1标识符和关键字(续)(5)流程控制—break、case、continue、default、do、else、for、if、return、switch、while;(6)异常处理—catch、finally、throw、throws、try;(7)修饰符—abstract、final、native、private、protected、public、static、synchronized、transient、volatile;(8)操作符—instanceof;(9)创建对象—new;(10)引用—this、super;(11)方法返回类型—void。2.2常量常量就是程序中持续不变的值,又称为字面值或直接数。Java中的常量包括整型常量、浮点常量、布尔常量、字符常量、字符串常量。2.2.1整型常量整型常量可以用八进制、十进制和十六进制表示。十进制:由0~9的数字组成且不能以0开始。例如:123,-456八进制:由0~7的数字组成且以0为前缀。例如:0123,-0456十六进制:由0~9的数字及A~F的字母(大小写均可)组成且以0X(或0x)为前缀。例如:0x123,-0x4ab;注意:默认情况整型常量为int类型,如果要表示long类型的整型常量可在常量后加L(或者l)。2.2.2浮点常量浮点常量分为float常量和double常量,数字都是十进制数来表示。默认情况下的浮点常量为double常量,如果要明确表示float常量可在常量后加F(或者f),也可以在常量后加D(或者d)明确表示double常量。例如:1.23,1.23d,1.23f也可以用指数形式来表示浮点常量。例如:1.23e1,1.23e1d,1.23e1f2.2.3布尔常量布尔常量其值只有两个:true和false。2.2.4字符常量字符常量是由单引号括起来的英文字母、数字、转移序列、特殊字符等的字符组成的。Java字符使用Unicode字符,Unicode字符是一套字符编码系统,一个字符占两个字节,可以支持各类文字的字符,由Unicode字符形成的字符集称为UCS(UniversalCharacterSet)。例如:'a','\t','\ddd','\u????'2.2.5字符串常量字符串常量是由双引号括起来的英文字母、数字、转移序列、特殊字符等的字符序列组成的。例如:abcd,Hello2.3数据类型引用类型引用类型变量的值是指向内存空间的引用(地址)。数组、类和接口都属于引用类型。基本类型基本类型的变量包含了变量值。boolean、char、byte、short、int、long、float、double的变量均为基本类型。2.3.1逻辑类型逻辑类型(boolean)的变量取值只能是true或false。例如:booleantruth=true;注意:Java中的布尔值和数字之间不能来回转换。例如:booleantruth=1;//编译出错2.3.2整型整数类型:byte,short,int和long。类型长度取值范围byte8位-27~27-1short16位-215~215-1int32位-231~231-1long64位-263~263-1例如:inta=123;intb=a;2.3.3字符类型字符类型:char。例如:charc='a';charch=c;2.3.4浮点型浮点型:float(32位)和double(64位)。例如floatf=123.0f;doubled=123.0d;2.3.5基本数据类型的转换当我们把一种基本数据类型变量赋给另一种基本类型变量时,就涉及到数据转换。当把在级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。反之,则是错误。数据类型的高低顺序如下:(byte,short,char),int,long,float,double例如:intx=50;floaty;y=x;//如果输出y的值,结果将是50.0。x=y;//编译出错当把级别高的变量赋给级别底变量时,一般情况下需要使用强制转换。强制转换的格式:(类型名)要转换的变量;例如:floaty=1.1f;intx=(int)y;longz=(long)y;2.3.5基本数据类型的转换(续)2.3.5基本数据类型的转换(续)将常量直接赋给特定数据类型的变量时,其转换规律如下:常量变量intlongcharbooleanfloatdoubleStringbyte部分castcastcastXcastcastXshort部分castcastcastXcastcastXint√cast√XcastcastXlong√√√XcastcastXchar部分castcast√XcastcastXbooleanXXX√XXXfloat√√√X√castXdouble√√√X√√XStringXXXXXX√2.3.6数据类型的自动提升当两种数据类型不同的变量或常量进行运算时,会将低级别的数据类型提升到高级别的数据类型。注意:所有的byte、short和char类型被自动提升为int型。例如:byteb=5;b=b-2;shorts=1;shortt=2;shortst=s+t;//编译出错//编译出错例子1publicclassExample2_1{publicstaticvoidmain(Stringargs[]){shortc=2200;longd=8000;floatf=1.23;doubleg=123456789.123456789;c=(short)d;f=(float)g;System.out.print(c=+c);System.out.println(d=+d);System.out.println(f=+f);System.out.println(g=+g);}}//编译出错//导致精度的损失2.3数组数组是相同类型的数据按顺序组成的一种复合数据类型(引用类型)。通过数组名加数组下标,来使用数组中的数据。下标从0开始排序。声明数组声明数组仅仅是给出了数组名字、元素的数据类型和数组的维数。如:chars1[];char[]s2;inta1[][];int[][]a2;2.4数组(续)创建数组创建数组为数组分配内存空间,必须指定数组的长度。格式如下:数组名=new数组数据类型[元素个数]…例如:s1=newchar[3];a1=newint[3][4];数组初始化char[]s1={'a','b','c'};int[][]a1={{1,2,3,4},{5,6,7,8},{9,10,11,12}};例子2publicclassExample2_3{publicstaticvoidmain(Stringargs[]){inta[]={100,200,300};intb[]={10,11,12,13,14,15,16};b=a;b[0]=123456;System.out.println(数组a:+a[0]+,+a[1]+,+a[2]);System.out.println(数组b:+b[0]+,+b[1]+,+b[2]);System.out.println(数组b的长度:+b.length);}}例子3publicclassArrayOfArraysDemo1{publicstaticvoidmain(String[]args){int[][]a=newint[4][];for(inti=0;ia.length;i++){a[i]=newint[i+1];for(intj=0;ja[i].length;j++){a[i][j]=i+j;System.out.print(a[i][j]+);}System.out.println();}}}

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功