文档库 最新最全的文档下载
当前位置:文档库 › java数组练习题目

java数组练习题目

java数组练习题目
java数组练习题目

一填空题

1)数组的元素通过来访问,数组Array的长度为。

2)数组复制时,"="将一个数组的传递给另一个数组。

3)没有显式引用变量的数组称为数组。

4)JVM将数组存储在 (堆或栈)中。

5)数组的二分查找法运用的前提条件是数组已经。

6)矩阵或表格一般用维数组表示。

7)如果把二维数组看成一维数组,那么数组的元素是数组。

8)Java中数组的下标的数据类型是。

9)不用下标变量就可以访问数组的方法是。

10)数组最小的下标是。

11)arraycopy()的最后一个参数指明。

12)向方法传递数组参数时,传递的是数组的。

13)线性查找法的平均查找长度为。

14)数组初始化包括。

15)数组下标访问超出索引范围时抛出异常

16)浮点型数组的默认值是。

17)对象型数组的默认值是。

18)对象类型的数组虽然被默认初始化,但是并没有构造函数。

19)二维数组的行的长度不同。

20)数组创建后其大小改变。

二选择题

1.下面错误的初始化语句是___

A. char str[]="hello";

B. char str[100]="hello";

C. char str[]={'h','e','l','l','o'};

D. char str[]={'hello'};

2.定义了一维int型数组a[10]后,下面错误的引用是___

3. A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0];

4.下面的二维数组初始化语句中,正确的是____

5. A. float b[2][2]={,,,}; B. int a[][]={{1,2},{3,4}};

6. C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0};

7.引用数组元素时,数组下标可以是____

8. A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可

9.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____

A. 24

B. 25

C. 18

D. 17

10.下列初始化字符数组的语句中,正确的是____

11.A. char str[5]="hello"; B. char

str[]={'h','e','l','l','o','\0'};

12.C. char str[5]={"hi"}; D. char str[100]="";

13.数组在Java中储存在中

14.A. 栈 B. 队列 C. 堆 D. 链表

15.下面程序的运行结果是____

16.main() {

int x=30;

int[] numbers=new int[x];

x=60;

}

A. 60

B. 20

C. 30

D. 50

17.下面不是创建数组的正确语句

18.f[][]=new float[6][6]; f[]=new float[6];

19.f[][]=new float[][6]; [][]f=new float[6][];

20.下面不是数组复制方法的是()

A. 用循环语句逐个复制数组

B. 用方法arraycopy

C. 用"="进行复制

D. 用clone方法

21.数组a的第三个元素表示为

A. a(3)

B. a[3] (2) D. a[2]

22.当访问无效的数组下标时,会发生

A. 中止程序

B. 抛出异常

C. 系统崩溃

D. 直接跳过

23.使用arraycopy()方法将数组a复制到b正确的是

A. arraycopy(a,0,b,0,

B. arraycopy(a,0,b,0,

C.. arraycopy(b,0,a,0,

D. arraycopy(a,1,b,1,

24.关于数组默认值,错误的是

A. char--'"u0000'

B. Boolean--true

C. float--0.0f

D. int-- 0

25.关于数组作为方法的参数时,向方法传递的是

A. 数组的引用

B. 数组的栈地址

C. 数组自身

D. 数组的元素

26.关于数组复制,下列说法错误的是

A. "="可以实现数组复制

B. 运用循环语句进行数组复制必须两个数组长度相同

C. arraycopy()方法没有给目标数组分配内存空间

D. 数组复制是数组引用的传递

27.下列语句会造成数组new int[10]越界是

A. a[0] += 9;

B. a[9]=10;

C. —a[9]

D. for(int i=0;i<=10;i++) a[i]++;

28.main方法是java Application 程序执行的入口点。关于main方法放入方法以

下合法的是( )

A. public static void main();

B. public static void main(String[]args)

C. public static int main(String[] arg)

D. public void main(String arg[])

29.如定义对象 StringBuffer ch = new StringBuffer("Shanghai") 则()=( )

30. A. 7 B.8 C.9 D.23

31.执行完代码"int[] x=new int[25];"后以下( )说明正确的

A. x[24]为0

B. x[24]未定义

C. x[25]为0

D. x[0]为空

32.关于char类型的数组,说法正确的是

A. 其数组的默认值是'A'

B. 可以仅通过数组名来访问数组

C. 数组不能转换为字符串

D. 可以存储整型数值

33.对于数组a[10],下列表示错误的是

A. a[0]

B. a(0)

C. a[9]

D. a[1]

34.下列数组声明,下列表示错误的是

A. int[] a

B. int a[]

C. int[][] a

D. int[]a[]

三、是非题

1.下标用于指出数组中某个元素位置的数字。( )

2.把数组中元素按某种顺序排列的过程叫做查找。( )

3.确定数组中是否含有某个关键字的过程叫做排序。( )

4.一个数组可以存放许多不同类型的数值。( )

5.数组的下标通常是float型。( )

6.数组的某个元素被传递给一个方法并被该方法修改,当被调用方法执行完毕时,这个元素中含有修改过的数值。( )

7.数组可以声明为任何数据类型。( )

8.数组由具有一名字和相同类型的一组连续内存单元构成。( )

9.在数组声明中可以用等号及一个逗号分隔的初始值表初始化数组元素,该数组大小只能由用户来决定。( )

10.将一个数组传递给一个方法,必须加在数组名后加方括号。( )

语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。( )

12.下面这条语句正确吗( )

double[] myList;

myList = {, , , };

13. Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。( )

14. 数组中有length()这个方法,如()表示数组array中元素的个数( )

15.下面这条语句正确吗( )

int t[3][2] = {{1,2},{3,4},{5,6}};

16.数组声明后其大小固定。( )

17.设有整型数组的定义:int A.[]=new int[8]; ,则的值为7。( )

18. 数组一旦创建,其大小不能再改变。( )

19.用任何方式创建数组时,都必须指定数组的长度。( )

20.声明数组时,要指定数组长度,以便为数组分配内存。( )

四、简答题

1. 如何声明和创建一个一维数组

2. 如何访问数组的元素

3.数组下标的类型是什么最小的下标是什么一维数组a的第三个元素如何表示

4.数组越界访问会发生什么错误怎样避免该错误

5.给方法传递数组参数与传递基本数据类型变量的值有何不同

6.复制数组有哪些方法

7.数组创建后,其元素被赋予的默认值有哪些

8. 如何声明和创建一个二维数组

9.声明数组变量会为数组分配内存空间吗为什么

10.一个二维数组的行可以有不同的长度吗如果可以,试创建一个此类型的数组。

五、程序题

1.有一个整数数组,其中存放着序列1,3,5,7,9,11,13,15,17,19。请将该序列倒序存放并输出。

2.编写一个程序,提示用户输入学生数量姓名和他们的成绩,并按照成绩的降序来打印学生的姓名。

3.编写一个程序,求出整数数组中最小元素的下标。如果这样的元素个数大于1,则返回下标最小的数的下标。

4.现在有如下的一个数组:

int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;

要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为:int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5} ;

5. 现在给出两个数组:

·数组A:“1,7,9,11,13,15,17,19:;

·数组b:“2,4,6,8,10”

两个数组合并为数组c,按升序排列。

使用Arrays类操作Java中的数组

使用Arrays类操作Java中的数组 Arrays 类是 Java 中提供的一个工具类,在 java.util 包中。该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序、搜索等(关于类和方法的相关内容在后面的章节中会详细讲解滴~~)。Arrays 中常用的方法: 1、排序 语法:Arrays.sort(数组名); 可以使用 sort( ) 方法实现对数组的排序,只要将数组名放在 sor t( ) 方法的括号中,就可以完成对该数组的排序(按升序排列),如:

运行结果: 2、将数组转换为字符串 语法:Arrays.toString(数组名); 可以使用 toString( ) 方法将一个数组转换成字符串,该方法按顺序把多个数组元素连接在一起,多个元素之间使用逗号和空格隔开,如: 运行结果为: 输出数组nums中的元素:[25,7,126,53,14,86] Arrays 类还提供了许多其他方法来操作数组此处就不一一列举啦,各位小伙伴们可以在 wiki 查阅更多信息 任务

亲, Arrays 类的使用您掌握了嘛,让我们来检验一下吧。 在编辑器中定义了一个数组 hobbies,请在第2、11、14 行中将代码填写完整,实现使用 Arrays 类对数组进行排序并转换输出。运行结果为:[ game , movie , sports ] ?不会了怎么办 1. 导入 Arrays 类使用 import java.util.Arrays; 2. 使用 Arrays 类的 sort( ) 方法排序Arrays.sort(hobby s); 3. 使用 Arrays 类的 toString( ) 方法将数组转换为字符串 Ar rays.toString(hobbys);

Java_数组练习题目

一填空题 1)数组的元素通过数组下标来访问,数组Array的长度为元素的个数 (Array.length)。 2)Java中数组的下标的数据类型是整形。 3)不用下标变量就可以访问数组的方法是数组名。 4)数组最小的下标是0 。 5)arraycopy()的最后一个参数指明复制元素的个数。 6)向方法传递数组参数时,传递的是数组的引用。 7)数组初始化包括数组的声明,创建,初始化。 8)数组下标访问超出索引范围时抛出数组越界异常 9)浮点型数组的默认值是0.0f 。 10)对象型数组的默认值是null 。 二选择题 1.下面错误的初始化语句是_A B D__ A. char str[]="hello"; B. char str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是_B_ A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0]; 3.下面的二维数组初始化语句中,正确的是__B__ A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 4.引用数组元素时,数组下标可以是__D__ A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可 5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为__C__ A. 24 B. 25 C. 18 D. 17 6.下列初始化字符数组的语句中,正确的是_B___ A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; C. char str[5]={"hi"}; D. char str[100]=""; 7.数组在Java中储存在 C 中 A. 栈 B. 队列 C. 堆 D. 链表

java数组的概念和作用

1 数组的概念 和其他语言一样,Java也提供数组支持,数组是属于引用类型,即数组是一个 对象。 强调数组的类型是引用类型。 数组的基本概念及作用 数组是相同数据类型元素的集合 数组本身是引用数据类型,即对象。但是数组可以存储基本数据类型,也可以存储引用数据类型。 数组的举例 int [] a = new int []{1,2,3,4,5}; String [] s = new String []{"小熊","小小熊","小小小熊"}; Employee [] e=new Employee[10];(Employee是自定义类) 2 数组的声明 数组的声明的两种方式: 数据类型 [] 数组名字例如:int [] a; 数据类型数组的名字 [] 例如: int a []; 注意: 在Java语言中两种声明方法没有任何区别,但是建议大家用第一种,避免混淆a的数据类型。 数组在声明后还只是一个空指针,不能使用,要想使用必须创建。 数组创建的三种方式:

?//声明数组的同时,根据指定的长度分配内存,但数组中元素值都为默认的初始化值 char[] chAry = new char[10]; ?//声明数组并分配内存,同时将其初始化 ?int[] ary1 = new int[]{1, 2, 3, 4, 5}; ?//与前一种方式相同,仅仅只是语法相对简略 ?int[] ary2 = {1, 2, 3, 4, 5}; 从另一个角度,数组创建可以分为动态和静态两种 动态创建数组(没有为元素赋值,可以结合for循环进行赋值) char[] chAry = new char[10]; 静态创建数组,在创建的时候,即为每个元素赋初值 int[] ary1 = new int[]{1, 2, 3, 4, 5}; 数组的长度 数组的长度:length属性 int [] b1 = new int []{1,2,3,4,5,6,7}; System.out.println(b1.length); 注意:数组的长度是属性,String的长度是length(); 创建数组的时候必须指定数组的长度,而且一经定义则不允许改变。 数组的长度虽然是7,但是在内存中实际给8个位置,另外一个存储7. 数组之间赋值 在C语言中,不可以将数组直接赋值给另一个数组;

java中数组的学习完整版一

1.知识点 一维数组:定义、初始化、使用(相关的算法,常用系统类的使用) 多维数组:定义、初始化、使用 增强for循环,break、continue控制语句的学习 2.讲解 什么是数组? 例子 //要求把一个班的一门课的成绩,加起来求平均值; import java.util.*; class Average{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); float avg=0; float sum=0; int count=1; while(count<=3){ sum=sum+sc.nextFloat(); count++; } avg=sum/(count-1); System.out.println("平均值是:"+avg); System.out.println("程序结束"); } } //新要求:我要在输出平均值的同时,也要将这门课的最高分,最低分,同时也要能看到这门的成绩 数组概念:一组能够存储相同数据类型值的变量的集合。 在java中我们本着一切是对象的原则,我们把数组在java中看成是对象,数组对象。数组是最基本的引用型数据类型。 一维数组的知识点 定义方法: 1、三步法 A、int[] arr;用来申明数组的引用,在栈中为arr开辟内存; B、arr = new int[5];这是为数组arr在堆中为数组元素开辟6个存储单元; C、把数组在堆中的起始位置给了arr这个引用变量 *一般我们的程序在运行时,我们为局部变量在栈中开辟内存,而为对象(对象属性)在堆中开辟内存。为对象方法在方法区开辟内存空间。为类的属性,在静态区开辟内存空间。 具体的内存图:

Java数组与方法

若想要存放一连串相同数据类型的数据,使用数组是个相当好用的选择。此外,如果某个程序片段经常反复出现,那么将它定义成一个方法可以有效地简化程序代码。本章主要是介绍数组的基本用法与方法的应用,学完本章,将会对数组与方法的使用有更深一层的认识。 数组是由一组相同类型的变量所组成的数据类型,它属于引用类型。它们以一个共同的名称表示,数组中的每个元素则以下标来访问。数组依照存放元素的复杂程度分为一维数组、二维和多维数组,先来看看一维数组。 3.1 一维数组 一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的。可以将它简单的理解为是相同数据类型的数据的集合。 3.1.1 一维数组的声明与内存的分配 要使用Java的数组,必须经过两个步骤: (1)声明数组 (2)给数组分配内存 这两个步骤的语法如下: 数据类型数组名[ ]; 或数据类型[ ] 数组名; // 声明一维数组 数组名= new 数据类型[个数]; // 给数组分配内存 数组的声明格式里,“数据类型”是声明数组每个元素的数据类型,常见的类型有整型、浮点型与字符型等,也可以是引用类型。“数组名”是用来统一这组相同数据类型的元素的名称,其命名规则和变量的相同,建议使用有意义的名称为数组命名。数组声明后,接下来便是要配置数组所需的内存,其中“个数”是告诉编译器,所声明的数组要存放多少个元素,而“new”则是命令编译器根据括号里的个数,在内存中开辟一块内存供该数组使用。 需要注意的是,在Java中声明数组的时候,不能在[]中指定其长度。比如:int score[3]; // 错误 下面是关于一维数组的声明并分配内存给该数组的一个范例: int score[]; // 声明整型数组score score = new int[3]; // 为整型数组score分配内存空间,其元素个数为3 在上例中的第一行,当声明一个整型数组score时,score可视为数组类型的变量,此时这个变量并没有包含任何内容,编译器仅会分配一块内存给它,用来保存指向数组实体的地址,如图3-1所示。 图3-1 声明整型数组 声明之后,接着要做内存分配的操作,也就是上例中第二行语句。这一行会开辟3个可供保存整数的内存空间,并把此内存空间的参考地址赋给score变量。其内存分配的流程如图3-2所示。

Java中数组的声明

Java中数组的声明 一维数组的声明: 在Java中,数组是独立的对象,有自身的方法,不是变量的集合。 数组的声明: 类型标识符数组名[ ] 或者类型标识符[] 数组名。 数组的长度是在创建的时候决定的。 数组的创建方法: 先声明后创建: int array[]; array = new int[10]; 在声明的同时创建: int array[] = new int[10]; 直接赋值: int array[]= new int[1,2,3,4]; 数组下标从0开始。 数组是引用类型,他的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士地初始化。如: public class Testpublic static void main(Stirng [] args)?? int [] a = new int [5]; ?? Date[] days=new Date[3]; ?? System.out.println(a[3]); ?? System.out.println(days[2]);} class Dateint year,month,day; Date(int year,int month,int day)?? this.year=year; ?? this.month=month; ?? this.day=day;} 结果将是:0????? null 数组的拷贝 最有效率的方法是使用https://www.wendangku.net/doc/6114735330.html,ng.System类的静态方法: public static void arraycopy(object src,int srcPos,object dest, ???????????????? int destPos,int length) 可以用于数组src从第srcPos项元素开始的length个元素拷贝到目标数组从destPos项开始的length个位置。 如果源数据数目超过目标数组的边界,系统就会抛出异常。 二维数组 float[][] numthree;???????????? //定义一个float类型的2维数组 numthree=new float[5][5];?????? //为它分配5行5列的空间大小 numthree[0][0]=1.1f;??????????? //通过下标索引去访问???? 1行1列= 1.1 numthree[1][0]=1.2f;????????????????????????????????? // 2行1列=1.2 numthree[2][0]=1.3f;????????????????????????????????? // 3行1列=1.3 numthree[3][0]=1.4f;????????????????????????????????? // 4行1列=1.4

Java实验报告-数组及常用算法

学号 Java语言程序设计C 实验报告 实验2 数组及常用算法 学生姓名 专业、班级 指导教师 成绩 计算机与信息工程学院 年月日

一、实验目的 学习课程相关章节知识,通过上机练习,掌握以下知识: 1.掌握Java中对象和引用变量的概念 2.掌握Java数组的使用和本质 3.掌握数组相关常用算法(复制及排序方法) 二、实验内容 写一个方法,功能:定义一个一维的int 数组,长度为10,把从控制台输入整数赋值给数组,然后将它们按从小到大的顺序输出(使用冒泡排序)(知识点:数组遍历、数组元素访问) 三、实验思想 1.Java中对象和引用变量的概念 2.Java数组的使用和本质 3.数组相关常用算法(复制及排序方法) 四、实验结果 package sss; import java.util.Scanner; public class aaa { public static void main(String[] args) { // TODO自动生成的方法存根 Scanner input=new Scanner(System.in); System.out.println("排序之前的数组:"); int a[]=new int[10]; for(int b=0;ba[j+1]) { int temp=a[j+1]; a[j+1]=a[j]; a[j]=temp; } } } System.out.print("\n"); System.out.print("排序之后的数组:"); printArray(a); } public static void printArray(int[] arry) { 1

实验5 Java的数组

实验5 Java的数组 1、主要教学目标 (1)掌握Java中数组的声明和内存空间分配; (2)掌握Java数组的初始化过程; (3)掌握数组引用的概念。 2、重点内容 通过复习C语言中数组的概念,掌握Java语言中数组的声明、内存分配、初始化以及数组的引用等概念。 3、难点分析 数组的初始化,数组的内存分配以及引用。 讲授内容 一、数组的概念 §1.1函数 在未使用对象时定义函数,使用Public static 类型的函数。 ?Public static void print() ?静态函数与类无关,相当于C语言中的函数。 §1.2数组 Java中的数组是一个复合数据类型,数组中的元素具有相同的类型。 ?元素类型可以是基本数据类型,类的对象,也可以是数组类型 ?数组元素是有序排列的,使用下标来访问 ?数组有一个属性length,表示数组的长度 ?数组必须经过声明,构造,赋初值三个步骤以后才能使用(定义—内存分配—赋值)。 声明一个一维数组的方式如下: ?元素数据类型[] 数组名称; ?元素数据类型数组名称[]; 注意: ?两种声明方式完全相同 ?在[ ]里面什么都不能有 ?声明一个数组并没有为数组元素分配内存,因此还不能使用它们。

/*声明整型数组intArray, 包含10个元素*/ int[] intArray; intArray=new int[10]; /*声明单精度型数组floatArray,包含15个元素*/ float floatArray[] = new float[15]; 1、新建一个整数型数组,数组包括4个元素,打印数组内的各个元素。 public class App5_1 { public static void main(String[] args) { int[] n = new int[4]; int k = n.length; for(int i=0;i

java中数组的定义及使用方法详解

java中数组的定义及使用方法详解 数组:是一组相关变量的集合 数组是一组相关数据的集合,一个数组实际上就是一连串的变量,数组按照使用可以分为一维数组、二维数组、多维数组 数据的有点 不使用数组定义100个整形变量:int i1;int i2;int i3 使用数组定义 int i[100]; 数组定义:int i[100];只是一个伪代码,只是表示含义的 一维数组 一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的,使用java数组,必须经过两个步骤,声明数组和分配内存给该数组,声明形式一 声明一维数组:数据类型数组名[]=null; 非配内存给数组:数组名=new 数据类型[长度]; 声明形式二 声明一维数组:数据类型 [] 数组名=null; java数据类型分为两大类 基本数据类型 int、long操作的时候本身就是具体的内容 引用数据类型:数组、类、接口 引用传递的就是一个内存的使用权,一块内存空间,可能有多个人同

时使用 事例声明数组 package com.qn.array; public class Test { public static void main(String[] args) { int score[]=null;//声明数组 score=new int[3];//开辟空间,大小为3 } } 数组的声明格式里,数据类型是数组元素的数据类型,常见的有整形、浮点型、与字符型等 数组名是用来统一这组相同数据类型元素的名称,其命名规则和变量的相同 数组声明后实际上是在栈内存中保存了此数组的名称,结下了是要在堆内存中配置数组所需要的内存,齐产固定是告诉编译器,所声明的数组要存放多少个元素,而new 则是命令编译器根据括号里的长度 基本数据类型偶读有其默认值:int 0;只要是引用数据类型默认值就是null 事例 package com.qn.array;

Java 数组练习题目

一填空题 1)数组的元素通过来访问,数组Array的长度为。 2)数组复制时,"="将一个数组的传递给另一个数组。 3)没有显式引用变量的数组称为数组。 4)JVM将数组存储在(堆或栈)中。 5)数组的二分查找法运用的前提条件是数组已经。 6)矩阵或表格一般用维数组表示。 7)如果把二维数组看成一维数组,那么数组的元素是数组。 8)Java中数组的下标的数据类型是。 9)不用下标变量就可以访问数组的方法是。 10)数组最小的下标是。 11)arraycopy()的最后一个参数指明。 12)向方法传递数组参数时,传递的是数组的。 13)线性查找法的平均查找长度为。 14)数组初始化包括。 15)数组下标访问超出索引范围时抛出异常 16)浮点型数组的默认值是。 17)对象型数组的默认值是。 18)对象类型的数组虽然被默认初始化,但是并没有构造函数。 19)二维数组的行的长度不同。 20)数组创建后其大小改变。 二选择题 1.下面错误的初始化语句是___ A. char str[]="hello"; B. char str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是___ A.a[0]=1; B.a[10]=2; C.a[0]=5*2; D.a[1]=a[2]*a[0]; 3.下面的二维数组初始化语句中,正确的是____ A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 4.引用数组元素时,数组下标可以是____ A.整型常量 B.整型变量 C.整型表达式 D.以上均可 5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____ A. 24 B.25 C. 18 D. 17 6.下列初始化字符数组的语句中,正确的是____ A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; C. char str[5]={"hi"}; D. char str[100]=""; 7.数组在Java中储存在中

JAVA基础语法数组

JA V A基础语法_数组 一、选择题 1、以下能对二维数组a进行正确初始化的语句是 A)int a[2][] = { {1 , 0 , 1} , {5 , 2 , 3} }; B)int[][] a = { { 1, 2, 3 }, { 4, 5, 6 } }; C)int a[2][4] = { { 1 , 2 , 3 }, { 4 , 5 } , { 6 } }; D)int[] a = { { 1 , 0 , 1 } { } , { 1 , 1 } }; 答案:B 2、若有说明:int a[][]=new int[2][3];则数组a中各元素 A)可在程序的运行阶段得到初值0 B)可在程序的编译阶段得到初值0 C)不能得到确定的初值 D)可在程序的编译或运行阶段得到初值0 答案:A 3、下面创建二维数组正确的是 A)int[][] a = new int[][3]; B)int[][] a = new int[2][3]; C)int[] a[] = new int[2][]; D)int a[][] = new int[][2]; 答案:BC 4、若有说明: int a[] = { 1, 2, 3, 4, 5, 6, 7 }; 则获取a数组的大小是A)length B)length() C)getLen() D)size() 答案:A 5、执行下面的程序段后,变量k中的值为 int k = 3, s[] = new int[2]; s[0] = k; k = s[1] * 10; A)0 B)33 C)30 D)10 答案:A 6、下列四个选项中,正确的数组定义是______ A)int size = 2; int[] a = new int[size]; B)int 3a = new int[3]; C)long size = 2; int[] a = new int[size]; D)int[] $a= new int[3]; 答案:AD

JAVA中运用数组的四种排序方法

JAVA中在运用数组进行排序功能时,一般有四种方法:快速排序法、冒泡法、选择排序法、插入排序法。 快速排序法主要是运用了Arrays中的一个方法Arrays.sort()实现。 冒泡法是运用遍历数组进行比较,通过不断的比较将最小值或者最大值一个一个的遍历出来。 选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组。 插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。下面我就将他们的实现方法一一详解供大家参考。 <1>利用Arrays带有的排序方法快速排序 import java.util.Arrays; publicclass Test2{ publicstaticvoid main(String[] args){ int[] a={5,4,2,4,9,1}; Arrays.sort(a); //进行排序 for(int i: a){ System.out.print(i); } } } <2>冒泡排序算法 publicstaticint[] bubbleSort(int[] args){//冒泡排序算法 for(int i=0;iargs[j]){ int temp=args[i]; args[i]=args[j]; args[j]=temp; } } } return args; } <3>选择排序算法 publicstaticint[] selectSort(int[] args){//选择排序算法 for (int i=0;i

Java数组练习题带答案

一填空题 1)数组的元素通过下标来访问,数组Array的长度为Array.length 。 2)数组复制时,"="将一个数组的引用传递给另一个数组。 3)JVM将数组存储在栈(堆或栈)中。 4)数组的二分查找法运用的前提条件是数组已经排序。 5)Java中数组的下标的数据类型是整型。 6)数组最小的下标是0 。 7)arraycopy()的最后一个参数指明复制元素的个数。 8)向方法传递数组参数时,传递的是数组的引用。 9)数组初始化包括数组的申明,创建和初始化。 10)数组下标访问超出索引范围时抛出数组越界异常 11)浮点型数组的默认值是0.0f 。 12)数组创建后其大小不能改变。 二选择题 1.下面错误的初始化语句是_ABD__ A. char str[]="hello"; B. char str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是_B__ 3. A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0]; 4.下面的二维数组初始化语句中,正确的是____ 5. A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; 6. C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 7.引用数组元素时,数组下标可以是_D___ 8. A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可 9.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____ A. 24 B. 25 C. 18 D. 17 10.下列初始化字符数组的语句中,正确的是__B__ 11.A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; 12.C. char str[5]={"hi"}; D. char str[100]=""; 13.数组在Java中储存在 C 中 14.A. 栈 B. 队列 C. 堆 D. 链表 15.下面程序的运行结果是____ main() { int a[][]={{1,2,3},{4,5,6}}; System.out.printf("%d", a[1][1]); } A. 3 B. 4 C. 5 D. 6 16.下面程序的运行结果是_C___ 17.main() {

JAVA实验五 字符串和数组

实验五字符串和数组 【实验目的】 1.掌握数组的声明、分配空间及初始化 2.理解多维数组(重点掌握二维) 3.掌握String类的特点及常用方法的使用 4.掌握StringBuffer类的特点及常用方法的使用 5.掌握String类和StringBuffer类的区别 6.掌握equal方法与==的区别 【预习内容】 1.复习课件中理论知识 2.练习课堂所讲的例子 【实验内容及步骤】 1、请输入10个整数进行排序。 package com.shiyan5; import java.util.Scanner; public class ShiYan1 { /** * 1、请输入10个整数进行排序。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner s= new Scanner(System.in); int[] a=new int[10]; System.out.println("请输入10个整数"); for(int i=0;i<10;i++){ a[i]=s.nextInt(); } System.out.print("输入原序列为:"); for(int i=0;i<10;i++){ System.out.print(a[i]+" "); } for(int i=0;i<10;i++){ for(int j=i+1;j<10;j++){ if(a[i]>a[j]){ int t=a[i]; a[i]=a[j];

a[j]=t; } } } System.out.print("\n排序后:"); for(int i=0;i<10;i++){ System.out.print(a[i]+" "); } } } 2、定义一个10个元素组成的一维数组,输出该数组中的最大值、最小值、所有元素总和,以及最大值和最小值在该数组中的位置。 package com.shiyan5; import java.util.Scanner; public class ShiYan2 { /** * 定义一个10个元素组成的一维数组,输出该数组中的最大值、最小值、所有元素总和 * ,以及最大值和最小值在该数组中的位置。 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner s=new Scanner(System.in); int[] a=new int[10]; System.out.println("请输入10个整数"); for(int i=0;i<10;i++){ a[i]=s.nextInt(); } int max=a[0]; int min=a[0]; int maxwz=0; int minwz=0; int sum=0; for(int j=0;jmax){ max=a[j]; maxwz=j+1; } if(a[j]

实验1(05) Java语言基础-数组_答案

班级:姓名:学号:成绩 实验一:Java语言基础——数组 实验目的: 1.知道怎么样声明、创建和初始化各种类型的数组 2.理解二维数组的概念,能够声明、创建和初始化各种类型的二维数组 3.掌握对一维或二维数组元素的访问方法 4.掌握不规则二维数组的声明、创建和初始化以及访问的方法了解Arrays 类及System类中关于数组操作的方法的使用 实验内容 1.编写程序,掌握数组的声明和访问数组元素,了解数组对象length的作 用 2.编写程序,掌握二维数组的定义和应用 3.编写程序,掌握二维不规则数组的定义和使用 4.编写程序,熟悉命令行参数 1.有如下数组 int myArray[] = { 1, 2, 3, 4, 5, 6 }; int yourArray[] = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 }; 请利用System.arraycopy方法编写一个程序,复制myArray数组的所有内容到yourArray数组,放在yourArray数组下标0开始的位置,并输出yourArray数组的每个元素。

2.有整型数组,按顺序包含元素:10,7,9,2,4,5,1,3,6,8,请编写程序利用 Arrays.sort方法对数组进行排序,并输出该数组的每个元素。 3.互换二维数组的行列。

4.编写一个程序,连续输入5个整数,输出他们的平均数,并按格式输出每 个数和平均数的差值。(例如平均数为10,则输出格式如:5低于平均数5或11高于平均数1)。 5.利用二维数组存储并输出杨辉三角的前n(n的值自己指定)行。 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1

java定义二维数组的几种写法

//定义二维数组写法1 class numthree { public static void main(String[] args) { float[][] numthree; //定义一个float类型的2维数组 numthree=new float[5][5]; //为它分配5行5列的空间大小 numthree[0][0]=1.1f; //通过下标索引去访问 1行1列=1.1 numthree[1][0]=1.2f; // 2行1列=1.2 numthree[2][0]=1.3f; // 3行1列=1.3 numthree[3][0]=1.4f; // 4行1列=1.4 numthree[4][0]=1.5f; // 5行1列=1.5 System.out.println(numthree[0][0]); //打印换行输出喽 System.out.println(numthree[1][0]); System.out.println(numthree[2][0]); System.out.println(numthree[3][0]); System.out.println(numthree[4][0]); } } //定义二维数组写法2 定义的同时分配空间大小 class numfour { public static void main(String[] args) { short[][] numfour=new short[5][8]; //定义一个short类型的数组同时为它分配5行8列的空间大小 numfour[0][7]=10; numfour[1][6]=20; numfour[2][5]=30; numfour[3][4]=40; numfour[4][3]=50; System.out.println(numfour[0][7]); System.out.println(numfour[1][6]); System.out.println(numfour[2][5]); System.out.println(numfour[3][4]); System.out.println(numfour[4][3]); } } //定义二维数组写法3 不规则数组 class numfive

Java数组练习题(带答案)教学提纲

J a v a数组练习题(带 答案)

1)数组的元素通过下标来访问,数组Array的长度为 Array.length 。 2)数组复制时,"="将一个数组的引用传递给另一个数组。 3)JVM将数组存储在栈 (堆或栈)中。 4)数组的二分查找法运用的前提条件是数组已经排序。 5)Java中数组的下标的数据类型是整型。 6)数组最小的下标是 0 。 7)arraycopy()的最后一个参数指明复制元素的个数。 8)向方法传递数组参数时,传递的是数组的引用。 9)数组初始化包括数组的申明,创建和初始化。 10)数组下标访问超出索引范围时抛出数组越界异常 11)浮点型数组的默认值是 0.0f 。 12)数组创建后其大小不能改变。 二选择题 1.下面错误的初始化语句是_ABD__ A. char str[]="hello"; B. char str[100]="hello"; C. char str[]={'h','e','l','l','o'}; D. char str[]={'hello'}; 2.定义了一维int型数组a[10]后,下面错误的引用是_B__ 3. A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0]; 4.下面的二维数组初始化语句中,正确的是____ 5. A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}}; 6. C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0}; 7.引用数组元素时,数组下标可以是_D___ 8. A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均 可 9.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____ A. 24 B. 25 C. 18 D. 17 10.下列初始化字符数组的语句中,正确的是__B__ 11.A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; 12.C. char str[5]={"hi"}; D. char str[100]=""; 13.数组在Java中储存在 C 中 14.A. 栈 B. 队列 C. 堆D. 链表 15.下面程序的运行结果是____ main() { int a[][]={{1,2,3},{4,5,6}}; System.out.printf("%d", a[1][1]); } A. 3 B. 4 C. 5 D. 6 16.下面程序的运行结果是_C___

Java干货分享,数组的定义,初始化,数组的遍历

1.类型转换例子:double d = Double.parseDouble(放入需要转换的值); 2.//获取1970.1.1零时到此时此刻的毫秒数 long a = System.currentTimeMillis(); 3.int num=(int)(Math.random()*1000+1); //生成1到1000之内的随机数将字符串转成小写String str = "aGDa"; str = str.toLowerCase(); 4.将字符串转成大写toUpperCase() 5.字符串不区分大小写比较str.equalsIgnoreCase(anotherString) 6.区分大小写比较str.equals() 数组 7.数组的定义 int[] arr = new int[10]; 8.数组的初始化 int[] arr1 = new int[3]; //0,0,0 第一种方式 int[] arr2 = {1,4,7}; //1,4,7 第二种方式 int[] arr3 = new int[]{1,4,7}; //1,4,7 第三种方式 int[] arr; arr = {1,4,7}; //编译错误 arr = new int[]{1,4,7}; //正确 arr = new int[10]; //正确 9.数组的访问 a) 通过数组名.length获取数组的长度 int[] arr = new int[3];

System.out.println(arr.length);//3 b) 通过下标/索引来访问数组中的元素下标从0开始,最大到数组.length-1 int[] arr = new int[3]; arr[0] = 100; //给arr中的第一个元素赋值为100 arr[1] = 200; //给arr中的第二个元素赋值为200 arr[2] = 300; //给arr中的第三个元素赋值为300 arr[3] = 400; //异常(数组下标越界) System.out.println(arr[arr.length-1]);//输出数组中的最后一个元素 arr[arr.length-1] = 800; 10.数组的遍历 int[] arr = new int[3];//定义一个数组 for(int i=0;i=0;i--){//遍历数组中每个元素 System.out.println(arr[i]); } 11.数组的复制

用java数组实现学生管理

建立一个Student类代码如下 package https://www.wendangku.net/doc/6114735330.html,.xcu.student; import java.util.Scanner; public class Student { public int Id; public String Name; public int Age; public String Sex; public double Height; Student stu[]=new Student[20]; Scanner scan =new Scanner(System.in); public Student(int id, String name,int age,String sex,double height){ this.Id=id; https://www.wendangku.net/doc/6114735330.html,=name; this.Age=age; this.Sex=sex; this.Height=height; } public Student() { Student stu1=new Student(100, "王彦", 21, "男", 170); Student stu2=new Student(101, "李浩洋", 21, "男", 170); Student stu3=new Student(102, "张虎成", 21, "男", 170); Student stu4=new Student(103, "朱克飞", 21, "男", 170); Student stu5=new Student(104, "常亚平", 21, "女", 170); stu[0]=stu1; stu[1]=stu2; stu[2]=stu3; stu[3]=stu4; stu[4]=stu5; } /* * * 添加一个学生的信息的方法 */

相关文档