基本类型、数组、枚举类型课件_第1页
基本类型、数组、枚举类型课件_第2页
基本类型、数组、枚举类型课件_第3页
基本类型、数组、枚举类型课件_第4页
基本类型、数组、枚举类型课件_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第2章基本类型、数组和枚举类型2.1 标识符和关键字2.2 基本数据类型2.3 从命令行输入输出数据2.4 数组2.5 枚举类型主要内容2.1 标识符和关键字 1.1.标识符标识符 用来标识用来标识类名类名、变量名变量名、方法名方法名、类型名类型名、数组数组名名、文件名文件名的的有效字符序列有效字符序列称为标识符。称为标识符。 简单地说,简单地说,标识符就是一个名字标识符就是一个名字。2. 标识符的命名规则:标识符的命名规则:p标识符必须以标识符必须以字母字母、下划线(下划线(_ _)或美元符或美元符($ $)开头,后开头,后面可以跟面可以跟字母、数字、下划线或美元符;字母、数字、下划线或美元

2、符;p标识符可以包含数字,但标识符可以包含数字,但开头;开头;p除下划线除下划线“_”_”和和“$”$”符号外,标识符中不包含任何特殊符号外,标识符中不包含任何特殊字符,如空格;字符,如空格;p标识符标识符区分大小写区分大小写,比如,比如,“abcabc”和和“AbcAbc”是两个不同是两个不同的标识符;的标识符;p对于标识符的对于标识符的没有限制;没有限制;p不能使用不能使用JavaJava关键字关键字作为标识符;作为标识符;p使用使用UnicodeUnicode标准字符集标准字符集作为标示符;作为标示符;2.1 标识符和关键字 2.1 标识符和关键字 3.3.关键字关键字 关键字关键字就是

3、就是Java语言中已经被语言中已经被赋予特定意义赋予特定意义的一些的一些单词。单词。 不可以把关键字做为不可以把关键字做为标识符标识符来用。来用。 abstract assert boolean break byte case catch char class const continue default do double else extends final finally float for goto if implements import instanceof int inte rface long native new package private protected publi

4、c return short static strictfp super switch synchonized this throw throws transient try void volatile while 2.2 基本数据类型 浮点类型浮点类型单精度型(单精度型(float) 4个字节个字节双精度型(双精度型(double) 8个字节个字节逻辑类型(逻辑类型(boolean)字节型(字节型(bytebyte) 1 1字节字节短整型(短整型(shortshort) 2 2字节字节整整 型(型(intint) 4 4字节字节长整型(长整型(longlong) 8 8字节字节整数类型整数类

5、型 基本类型基本类型引用类型引用类型类(类(class)接口(接口(interface)数组数组枚举(枚举(enum)注解(注解(annotation)数据数据类型类型字符类型(字符类型(char) 2字节字节 基本数据类型容纳的值及其范围基本数据类型容纳的值及其范围类型类型大小(位)大小(位)取值范围取值范围bytebyte(字节型)(字节型)8 8-2-27 72 27 7-1-1shortshort(短整型)(短整型)1616-2-215152 21515-1-1intint(整型)(整型)3232-2-231312 23131-1-1longlong(长整型)(长整型)6464-2-2

6、63632 26363-1-1doubledouble(双精度)(双精度)32323.4e-383.4e-383.4e+383.4e+38floatfloat(浮点型)(浮点型)64641.7e-381.7e-381.7e+381.7e+38booleanboolean(布尔型)(布尔型)1 1true / falsetrue / falsecharchar(字符型)(字符型)1616u0000uFFFFu0000uFFFF2.2 2.2 基本数据类型基本数据类型 引用类型引用类型类型类型说明说明数组数组具有相同数据类型的变量的集合具有相同数据类型的变量的集合 类类(class)(class)

7、变量和方法的集合。如变量和方法的集合。如EmployeeEmployee类包含了员工的详细类包含了员工的详细信息和操作这些信息的方法信息和操作这些信息的方法接口接口(interface)(interface)是一系列方法的声明,方法特征的集合。可以实现是一系列方法的声明,方法特征的集合。可以实现JavaJava中的多重继承中的多重继承枚举枚举(enum)(enum)枚举类型是一种独特的值类型,它用于声明一组命名枚举类型是一种独特的值类型,它用于声明一组命名的常数的常数注解注解(annotation)(annotation)AnnotationAnnotation提供一种机制,将程序的元素如提供

8、一种机制,将程序的元素如: :类类, ,方法方法, ,属性属性, ,参数参数, ,本地变量本地变量, ,包和元数据联系起来包和元数据联系起来2.2 基本数据类型基本数据类型2.2 基本数据类型 一、常量一、常量 常量常量十进制数:十进制数:八八进制数:进制数:十六十六进制数:进制数:字符常量字符常量整型常量整型常量以非以非0开始的数,如:开始的数,如:220、-560、+369等。等。以以0开始的数,如:开始的数,如:06、0106、0677等。等。以以0X或或0 x开始的数:开始的数:0X123、0 xab、 0X4e浮点型常量浮点型常量(十进制十进制实数实数)一般一般形式形式指数指数形式形

9、式由数字、小数点以及必要时的正负号组成。由数字、小数点以及必要时的正负号组成。如:如:29.56、-56.33、0.056、.056、0.0等。等。相当于科学计数法,将形如相当于科学计数法,将形如a10b的数值的数值表示成如下形式:表示成如下形式: aEb 或或 aeb如:如: 2.956E3、-0.789e8、.792e-6等。等。 用两个英文单引号限定的一个字符,如:用两个英文单引号限定的一个字符,如:a 、9 、Z等。等。另外,还有以另外,还有以“”开头的转义字符常量,如开头的转义字符常量,如n。逻辑常量逻辑常量true(真)(真)false(假)(假)注意不同类型常量的表示方法注意不同

10、类型常量的表示方法1、long 型型 常量:常量:long型常量用后缀型常量用后缀L来表示,例如来表示,例如108L(十进制十进制)、07123L(八进制八进制)、0 x3ABCL(十六进制十六进制) ,后缀用,后缀用L或或l表示。表示。 2、 float型型 常量:常量:453.5439f,21379.987F,231.0f ,后缀用后缀用F或或f表表示。需要特别注意的是:示。需要特别注意的是:常量后面必须要有后缀常量后面必须要有后缀“f”或或“F”。 3、double 型型 常量:常量:2389.539d,2318908.987,0.05(小数表示法),(小数表示法), 后缀用后缀用D或或

11、d表示。表示。 float x=123.78 对吗?为什么?对吗?为什么? 1. 标识符的命名规则:标识符的命名规则:p标识符必须以标识符必须以字母字母、下划线(下划线(_ _)或美元符或美元符($ $)开头,后开头,后面可以跟面可以跟字母、数字、下划线或美元符;字母、数字、下划线或美元符;p标识符可以包含数字,但标识符可以包含数字,但开头;开头;p除下划线除下划线“_”_”和和“$”$”符号外,标识符中不包含任何特殊符号外,标识符中不包含任何特殊字符,如空格;字符,如空格;p标识符标识符区分大小写区分大小写,比如,比如,“abcabc”和和“AbcAbc”是两个不同是两个不同的标识符;的标识

12、符;p对于标识符的对于标识符的没有限制;没有限制;p不能使用不能使用JavaJava关键字关键字作为标识符;作为标识符;p使用使用UnicodeUnicode标准字符集标准字符集作为标示符;作为标示符;上节主要内容 上节主要内容浮点类型浮点类型单精度型(单精度型(float) 4个字节个字节双精度型(双精度型(double) 8个字节个字节逻辑类型(逻辑类型(boolean)字节型(字节型(bytebyte) 1 1字节字节短整型(短整型(shortshort) 2 2字节字节整整 型(型(intint) 4 4字节字节长整型(长整型(longlong) 8 8字节字节整数类型整数类型 基本类

13、型基本类型引用类型引用类型类(类(class)接口(接口(interface)数组数组枚举(枚举(enum)注解(注解(annotation)数据数据类型类型字符类型(字符类型(char) 2字节字节2、数据类型、数据类型上节主要内容3 3、常量、常量 常量常量十进制数:十进制数:八八进制数:进制数:十六十六进制数:进制数:字符常量字符常量整型常量整型常量以非以非0开始的数,如:开始的数,如:220、-560、+369等。等。以以0开始的数,如:开始的数,如:06、0106、0677等。等。以以0X或或0 x开始的数:开始的数:0X123、0 xab、 0X4e浮点型常量浮点型常量(十进制十进

14、制实数实数)一般一般形式形式指数指数形式形式由数字、小数点以及必要时的正负号组成。由数字、小数点以及必要时的正负号组成。如:如:29.56、-56.33、0.056、.056、0.0等。等。相当于科学计数法,将形如相当于科学计数法,将形如a10b的数值的数值表示成如下形式:表示成如下形式: aEb 或或 aeb如:如: 2.956E3、-0.789e8、.792e-6等。等。 用两个英文单引号限定的一个字符,如:用两个英文单引号限定的一个字符,如:a 、9 、Z等。等。另外,还有以另外,还有以“”开头的转义字符常量,如开头的转义字符常量,如n。逻辑常量逻辑常量true(真)(真)false(假

15、)(假)上节主要内容long 型型 常量:常量:long型常量用后缀型常量用后缀L来表示,例如来表示,例如108L(十进制十进制)、07123L(八进制八进制)、0 x3ABCL(十六进制十六进制) ,后缀用,后缀用L或或l表示。表示。 float型型 常量:常量:453.5439f,21379.987F,231.0f ,后缀用后缀用F或或f表表示。需要特别注意的是:示。需要特别注意的是:常量后面必须要有后缀常量后面必须要有后缀“f”或或“F”。 double 型型 常量:常量:2389.539d,2318908.987,0.05(小数表示法),(小数表示法), 后缀用后缀用D或或d表示。表示

16、。 float x=123.78 对吗?为什么?对吗?为什么? 4、long 型、浮点型常量表示方法型、浮点型常量表示方法 转义字符转义字符转义字符含义含义ddd1到3位8进制数所表示的字符uxxxx1到4位16进制数所表示的字符单引号”双引号反斜杠b退格r回车n换行t制表符2.2 基本数据类型转义符应用举例Example2_1.javapublic class Example2_1 public static void main (String args ) char ch1=,ch2=好; int p1=32831,p2=30452; System.out.println(+ch1+的位置

17、:+(int)ch1); System.out.println(+ch2+的位置:+(int)ch2); System.out.println(第+p1+个位置上的字符是:+(char)p1); System.out.println(第+p2+个位置上的字符是:+(char)p2); 2.2 基本数据类型 二、变量二、变量 变量定义的一般格式为:变量定义的一般格式为:数据类型标识符变量名表;数据类型标识符变量名表;说明说明:数据类型符用来说明变量的数据类型,它可以是数据类型符用来说明变量的数据类型,它可以是Java语言提语言提供的任意一种类型。供的任意一种类型。变量名表可以是一个变量,也可以是

18、多个变量,多个变量之变量名表可以是一个变量,也可以是多个变量,多个变量之间用逗号分隔。间用逗号分隔。 程序中用到的变量,必须程序中用到的变量,必须“先定义后使用先定义后使用”。变量的初始化变量的初始化 变量在使用之前必须被初始化,也就是至少被赋值一次。变量在使用之前必须被初始化,也就是至少被赋值一次。 可以声明的同时赋值:可以声明的同时赋值:int i = 10;int i = 10;String s = “abcd”;String s = “abcd”;也可以声明以后再赋值:也可以声明以后再赋值:int i;int i;String s;String s;i = 99;i = 99;s =

19、“xyz”;s = “xyz”;2.2 基本数据类型 2.2 基本数据类型 例:例: 字符型变量应用举例字符型变量应用举例public class Test2 public static void main(String args) char x,y; x=a; y=97; System.out.println(x); System.out.println(y); 2.2 基本数据类型 三、基本数据类型的转换三、基本数据类型的转换 当把一当把一种数据类型种数据类型变量变量赋值赋值给另一种给另一种基本类型基本类型变量时,就要数据转换。变量时,就要数据转换。Java中数据的基本类型(不包括逻辑类型

20、)按中数据的基本类型(不包括逻辑类型)按精度精度从从“低低”到到“高高”排列:排列: byte short char int long float double (1)当把)当把级别低级别低的变量的值赋给的变量的值赋给级别高级别高的变量时,系统的变量时,系统自动自动完成数完成数据类型的转换。例如:据类型的转换。例如: float x=100; (2)当把)当把级别高的变量级别高的变量的值赋给的值赋给级别低的变量级别低的变量时,必须使用时,必须使用显式显式类类型转换运算。型转换运算。 显式显式转换的格式:转换的格式:(类型名)(类型名)要转换的值要转换的值; 例如:例如: int x=(int)

21、34.89; float x= 12.4 错误?为什么!错误?为什么! 正确方式:正确方式:float x=(float)12.4 或者或者 float x=12.4f基本类型转换应用举例Example2_2.javapublic class Example2_2 public static void main (String args ) int c=128; long d=77777; float f=2e3F; double g=3.14e-300; /指数表示法 double result=f*g; System.out.println(f=+f); System.out.printl

22、n(g=+g); System.out.println(rerult=+result); g=1234.123456789; /小数表示法 c=(int)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 从命令行输入输出数据 一、输入基本型数据一、输入基本型数据 可以利用可以利用Scanner类来实现基本型数据的输入。类来实现基本型数据的输入。 使用Scanner类创建一个对象:

23、 Scanner reader=new Scanner(System.in); reader对象调用下列方法,读取用户在命令行(例如,MS-DOS窗口)输入的各种基本类型数据: nextBoolean()、 nextByte()、 nextShort()、 nextInt() nextLong()、nextFloat()、nextDouble()。 上述方法执行时都会堵塞,程序等待用户在命令行输入数据回车确认。输入数据应用举例xample2_3.javaimport java.util.Scanner;public class Example2_3 public static void mai

24、n (String args ) System.out.println(请输入若干个数,每输入一个数回车确认); System.out.println(最后输入数字0结束输入操作); Scanner reader=new Scanner(System.in); double sum=0; int m=0; double x = reader.nextDouble(); while(x!=0) m=m+1; sum=sum+x; x=reader.nextDouble(); System.out.println(m+个数的和为+sum); System.out.println(m+个数的平均值+

25、sum/m); 2.3 从命令行输入输出数据 二、输出基本型数据二、输出基本型数据 (1)用System.out.println() 或 System.out.print() 可输出串值、表达式的值。 二者的区别是前者输出数据后换行,后者不换行。 (2)允许使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置一起输出,如: System.out.println(m+个数的和为+sum); System.out.println(“:”+123+“大于”+122) (3) JDK1.5新增了和C语言中printf函数类似的数据输出方法,该方法使用格式如下: (a)System.out.p

26、rintf(格式控制部分,表达式1,表达式2,表达式n) (b)格式控制部分由格式控制符号:%d、%c、%f、%s和普通的字符组成,普通字符原样输出。 (c)格式符号用来输出表达式的值: %d:输出int类型数据值 %c:输出char型数据。 %f:输出浮点型数据,小数部分最多保留6位 %s:输出字符串数据。 (d) 输出数据时也可以控制数据在命令行的位置,例如: %md:输出的int型数据占m列 %m.nf:输出的浮点型数据占m列,小数点保留n位。2.4 数组数组是数组是相同类型的变量相同类型的变量按顺序组成的一种复合数按顺序组成的一种复合数据类型,称这些相同类型的变量为数组的元素或据类型,

27、称这些相同类型的变量为数组的元素或单元。单元。数组通过数组通过数组名数组名加加索引索引来使用数组的元素。索引来使用数组的元素。索引从从0开始。开始。2.4.1 声明数组声明数组包括数组的名字、数组元素的数据类型。(1)声明一维数组有下列两种格式:)声明一维数组有下列两种格式: 数组的元素类型数组的元素类型 数组名字数组名字 ; 或或 数组的元素类型数组的元素类型 数组名字数组名字; 例如:例如:float boy ; 或或 float boy; 数组长度数组长度length 数组数组.length(2)声明)声明2维数组有下列两种格式:维数组有下列两种格式: 数组的元素类型数组的元素类型 数组

28、名字数组名字; 或或 数组的元素类型数组的元素类型 数组名字数组名字; 例如:例如:char cat ; 或或 char cat; 数组boy的元素存放float型数据、数组cat的元素存放char型数据。2.4.1 声明数组(3)数组的元素的类型可以是)数组的元素的类型可以是Java的的任何任何一种类型一种类型 假如已经声明了一种People类型数据,那么可以如下声明一个数组: People china ; 数组china的元素可以存放People类型的数据。 注:与注:与C、C+不同,不同,Java不允许在声明数组的方括号内指不允许在声明数组的方括号内指定数组元素的个数。定数组元素的个数。

29、 比如:比如:int a12; 或或 int 12 a;将导致语法错误。将导致语法错误。2.4.2 创建数组广义的讲,数组也是一种数据类型:声明数组仅仅给出了数组名字数组名字和元素的数据类型数据类型,要想真正使用数组还必须为它分配内存空间分配内存空间,即创建数组。 这也是刚才讲的数组声明时不得指定元素数目的原因数组声明时不得指定元素数目的原因!(1)一维数组创建及内存空间分配)一维数组创建及内存空间分配: 数组名字 = new 数组元素的类型数组元素的个数; 例如:例如: float boy ; boy= new float4;数组数组boy获得获得4个用来存放个用来存放float类型数据的内

30、存空间(如图)类型数据的内存空间(如图)。数组变量数组变量boy中存放着这些内中存放着这些内存单元的首地址存单元的首地址,该地址称作,该地址称作数组的引用数组的引用,这样数组就可以,这样数组就可以通过索引操作这些内存单元通过索引操作这些内存单元 。boy图图2.4 数组的内存模型数组的内存模型 0 x785BAboy0boy1boy2boy32.4.2 创建数组创建数组(2)声明数组和创建数组可以一起完成,如:)声明数组和创建数组可以一起完成,如: float boy=new float4; (3)二维数组声明以及分配内存空间:)二维数组声明以及分配内存空间: 例如:int mat; mat=

31、new int 23; 或 int mat=new int23; (4)二维数组可以看做若干个一维数组组成的,由此可以)二维数组可以看做若干个一维数组组成的,由此可以采用采用“数组的数组数组的数组”声明多维数组。声明多维数组。二维数组可以看做若干个一维数组组成的二维数组可以看做若干个一维数组组成的 int mat; mat=new int 23; 2.4.3 数组元素的使用数组元素的使用(1)一维数组通过)一维数组通过索引符索引符访问自己的元素,如访问自己的元素,如 boy0,boy1等。 注意:注意:索引从0开始,数组若有7个元素,那么索引到6为止,如果程序使用了如下语句:boy7=384.

32、98f; 程序运行时将发生.ArrayIndexOutOfBoundsException异常,因此在使用数组时必须谨慎,防止索引越界。(2)二维数组也通过索引符访问自己的元素,如a01,a12等; 注意:索引从0开始,比如声明创建了一个二维数组a: int a = new int23; 那么第一个索引的变化范围从0到1,第二个索引变化范围从0到2。2.4.4 数组元素的长度数组元素的长度- lengthlength的使用的使用 一维数组的一维数组的元素的个数元素的个数称作数组的长度。称作数组的长度。(1)对于一维数组,“数组名字.length”的值就是数组中元素的个数。 对于 float a

33、= new float12; a.length的值12(2)对于二维数组“数组名字.length”的值是它含有的一维数组的个数。 对于 int b = new int36; b.length的值是3 2.4.5 数组的初始化数组的初始化 创建数组后,系统会给每个数组元素一个默认的值,如,float型是0.0。 (1)在声明数组时同时也可以给数组的元素一个初始值,如: float boy = 21.3f,23.89f,2.0f,23f,778.98f; (2)也可以直接用若干个一维数组初始化一个二维数组,这些一维数组的长度不尽相同,如: Int a=1,1,1,1,2,1,1,3,3,1,1,4

34、,6,4,12.4.6 数组的引用数组的引用 数组属于引用型变量,因此两个相同类型的数组如果具有相同的引用相同的引用,它们就有完全相同的元素。 (注意:数组引用和数组的使用的区别,引用是地址赋值范畴) 例如,对于下列数组: int a = 1,2,3 b = 4,5; 如果使用了下列赋值语句(a和b的类型必须相同): a=b; 那么a中存放的引用和b的相同。 ( 见下图)2.4.6 数组的引用 数组的引用 举例举例Example2_4.javapublic class Example2_4 public static void main(String args) int a=1,2,3,4;

35、int b=100,200,300; System.out.println(数组a的元素个数=+a.length); System.out.println(数组b的元素个数=+b.length); System.out.println(数组a的引用=+a); System.out.println(数组b的引用=+b); System.out.println(a=b的结果是+(a=b); a=b; System.out.println(数组a的元素个数=+a.length); System.out.println(数组b的元素个数=+b.length); System.out.println(a

36、=b的结果是+(a=b); System.out.println(a0=+a0+,a1=+a1+,a2=+a2); System.out.print(b0=+a0+,b1=+b1+,b2=+b2); 数组的引用 注意事项注意事项注意:对于char型数组a,System.out.println(a)不会输出数组a的引用,而是输出数组a的全部元素的值。要想输出char型数组a的引用,必须让数组a和字符窜做并置运算: System.out.println(“”+a);2.4.7 数组的表示格式数组的表示格式 Arrays类调用类调用 public static String toString(int

37、 a)方法,可以得到参数指定的一维数组a的如下格式的字符串表示: a0,a1 aa.length-1 例如:对于数组例如:对于数组 Int a=1,2,3,4,5,6 Arrays. toString(a)得到的字符串是:得到的字符串是: 1,2,3,4,5,6 注:toString是所有对象的一种方法,可以改写!是所有对象的一种方法,可以改写!2.4.8 复制数组 数组间的赋值,可用循环实现,也可用下边提供的方法实现!1arraycopy方法 System类调用方法: public static void arraycopy(sourceArray,int index1,copyArray,

38、int index2,int length)sourceArray:源数组名 index1:原数组开始位置copyArray:目标数组名 index2:目标数组开始位置Length:复制长度 可以将数组sourceArray从索引index1开始后的length个元素中的数据复制到数组copyArray中,copyArray数组从第index2元素开始存放这些数据。 例2-5:import java.util.Arrays;public class Example2_5 public static void main(String args) char a = a,b,c, d,e,f, b

39、= 1,2,3,4,5,6; int c =1,2,3,4,5,6, d = 10,20,30,40,50,60; System.arraycopy(a, 0, b, 0, a.length); System.arraycopy(c, 2, d, 2, c.length-3); System.out.println(数组数组 a 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(a); System.out.println(数组数组 b 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toS

40、tring(b); System.out.println(数组数组 c 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(c); System.out.println(数组数组 d 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(d); /System.out.println(a); /System.out.println(+a); 2.4.8 复制数组2 2copyOfcopyOf和和copyOfRange()copyOfRange()方法方法 copyOfcopyOf:

41、 :把整个数组中元素的值复制到另一个把整个数组中元素的值复制到另一个新的新的数组中。数组中。public static double public static double copyOfcopyOf(double original (double original ,int newLength)int newLength) 复制源数组中从复制源数组中从0开始的开始的newlength个元素的值到另一个数组中。个元素的值到另一个数组中。 根据不同的数据类型,还有多种数据类型表示根据不同的数据类型,还有多种数据类型表示例如:例如:Int a=100,200,300,400Int a=100,20

42、0,300,400Int b=Arrays.copyof(a,5)Int b=Arrays.copyof(a,5)那么:那么:b0=100b0=100 b1=200 b1=200 b2=300 b2=300 b4=400 b4=400 b5=0 b5=0 2.4.8 复制数组copyOfRange()copyOfRange()方法方法 copyOfRange()copyOfRange()方法把数组中方法把数组中部分元素部分元素的值复制到另一个的值复制到另一个新数新数组组中。中。public static double public static double copyOfRangecopyOf

43、Range(double original,int (double original,int from from ,int ,int toto) ) 功能:从功能:从from -from -(to -1to -1)的元素复制到一个新数组中的元素复制到一个新数组中 ; 注:新数组长度为注:新数组长度为( to from )( to from ) 例如:例如:Int a=100,200,300,400Int a=100,200,300,400,500,600500,600Int b=Arrays.copyofRange(a,2Int b=Arrays.copyofRange(a,2,5)5)那么:

44、那么:b0=300b0=300 b1=400 b1=400 b2=500 b2=500例例2-62-6import java.util.*;public class Example2_6 public static void main(String args) int a =10,20,30,40,50,60,b,c,d; b=Arrays.copyOf(a,10); System.out.println(数组数组 a 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(a); System.out.println(数组数组 b 的各个

45、元素中的值的各个元素中的值:); System.out.println(Arrays.toString(b); c=Arrays.copyOfRange(a,3,5); System.out.println(数组数组 c 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(c); d=Arrays.copyOfRange(a,3,9); System.out.println(数组数组 d 的各个元素中的值的各个元素中的值:); System.out.println(Arrays.toString(d); 2.4.9 排序与二分查找1Ar

46、ray类调用 Arrays.sort(a) 方法 把数组a中的元素按升序排序。2Array类调用 Arrays.sort (a , start , end) 方法 把数组a中的元素中索引star到end-1的元素值按升序排序。3Array类调用(二分法) Arrays.binarySearch( a, number)方法 在有序数组a中,查找元素number, 若存在则返回number在a中的索引,否则返回一个负数。 例2-7import java.util.*;public class Example2_7 public static void main(String args) int a=12,34,9,23,45,6,45,90,123,1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论