基础Java数组练习题及答案教学内容

合集下载

基础Java数组练习题及答案

基础Java数组练习题及答案

在开发的时候主方法之中的代码越少越好。

1、将一个给定的整型数组转置输出,
例如:源数组,1 2 3 4 5 6
转置之后的数组,6 5 4 3 2 1
2、现在有如下的一个数组:
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} ;
思路:生活中的问题解决 = 程序中的解决;
1、确定出不为0的个数,这样可以开辟新数组;
2、从旧的数组之中,取出内容,并将其赋给新开辟的数组;
3、现在给出两个数组:
·数组A:“1,7,9,11,13,15,17,19:;·数组b:“2,4,6,8,10”
两个数组合并为数组c,按升序排列。

主要的目的是熟悉这两个操作的方法,数组扩大,必须要将原始数组的内容拷贝进去。

java 数组试题

java 数组试题

java 数组试题Java 数组是一种基本的数据结构,在 Java 编程中经常会使用到。

数组是一组同类型数据的集合,可以通过下标来访问数组中的元素。

Java 数组是静态的,也就是说一旦数组声明后,它的长度就无法更改。

本文将介绍 Java 数组的一些常见试题及参考答案,希望对 Java 学习者有所帮助。

1. 如何创建一个数组?在 Java 中创建一个数组,需要使用关键字 new 来申请数组空间。

例如,如下代码可以创建长度为 5 的整型数组:```int[] arr = new int[5];```2. 如何计算数组的长度?在 Java 中,可以使用 length 属性来获取数组的长度。

例如,如下代码可以获取数组 arr 的长度:```int len = arr.length;```3. 如何遍历数组?Java 有很多方法可以遍历数组,如下列举两种常见的方法:(1) for 循环:```for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}```(2) for-each 循环:```for (int i : arr) {System.out.println(i);}```4. 如何对数组进行排序?Java 提供了 Arrays 类来实现对数组的排序。

例如,如下代码可以对整型数组 arr 进行升序排序:```Arrays.sort(arr);```5. 如何将数组转化为字符串?Java 中,可以使用 Arrays 类的 toString() 方法将数组转换为字符串。

例如,如下代码将数组 arr 转化为字符串:```String str = Arrays.toString(arr);```6. 如何取数组中的最大值和最小值?Java 中,可以使用 Arrays 类的 sort() 方法将数组排序,并选择第一个和最后一个元素来获取最小值和最大值。

java基础练习及参考答案

java基础练习及参考答案

java基础练习及参考答案java基础练习编程结构:1.如果一个数从左边念和从右边念都就是同一个数,就称作回文数.比如:686就是一个回文数.编程找到1000以内所有的回文数.packagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){inti,n,m,count=0;system.out.p rintln(\);for(i=1;i<=1000;i++){n=i;m=0;while(n!=0){m=m*10+n;n/=10;}if(m==i){sy stem.out.println(m);count++;}}}}2.一位妇女在河边洗碗.邻居们问:\家里去了多少个客人?\她提问:\每两个客人氰化钠一个菜碗,每三个客人氰化钠一个汤碗,每四个客人氰化钠一个饭碗,共用碗65个\反问共去了多少客人?packaget1;publicclasst2{publicstaticvoidmain(stringargs[]){intx=0;while(x<65){inti=x/2;i ntj=x/3;intm=x/4;if(i+j+m==65){system.out.println(x);}x++;}}}字符串:1/51.给定一个字符串“abc123abc”,求:1)将字串全部转为大写abc123abcpackagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;stringstr1=str.to uppercase();system.out.println(str1);}}2)截取字串的前3个字符abcpackagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;stringa[]=str.split(\);system.out.println(a[0]);}}3)去掉字符中两头的空格abc123abcpackagetext01;publicclasst2{publicstaticvoidmain(string[]args){stringstring=\;string=mytrim( string);system.out.println(\+string+\);}publicstaticstringmytrim(stringstring) {intstart=0;intend=string.length()-1;while(start<=end&&string.charat(start)==''){start++;}while(start<=end&&strin g.charat(end)==''){end--;}returnstring.substring(start,end+1);}}4)搜寻字母a发生的边线6packagetext01;importjava.util.*;publicclasst1{publicstaticvoidmain(stringargs[]){stringstr=\;system.out.println(str.indexof(\));}}2.取值一个字符串“helloworld.”,将字符串间的空格换成.2/5(提示信息:需用replaceall或循环方式处置)。

Java程序设计进阶1-数组(带答案)

Java程序设计进阶1-数组(带答案)

数组元素的引用
数组
数组元素的使用 一维数组通过索引符访问自己的元素,如
boy[0],boy[1]等。 注意:索引从0开始,数组若有7个元素,那么索引到6为 止,如果程序使用了如下语句:boy[7]=384.98f; 程序运行时将发生.ArrayIndexOutOfBoundsException 异常,因此在使用数组时必须谨慎,防止索引越界。
26
数组
与数组有关的常见错误 数组下标越界
变量声明时指明元素数组个数。下面几句均产生编译错
int [3] x; int [3][] a; 或 int [][3] a; int [3][4] b; int [3] y=new int [3]; Int [3] z={1, 2, 3} 原因分析:数组类型只能如int[],不能如int[n].否则int[3]和int[4] 类型不同,不能相互赋值。进而导致“数组对象在堆空间创建”带 来的好处,如动态创建数组、数组元素数量“可变”、多维不规则 数组等特色,几乎丧失殆尽。 27
对二维复合数据类型的数组,必须首先为最高维分配引用 空间,然后再顺次为低维分配空间。而且,必须为每个数 组元素单独分配空间。
25
数组
多维数组 二维数组元素的引用
对二维数组中的每个元素,引用方式为: arrayName[index1][index2]
例如: num[1][0];
二维数组举例:Array2D.java
17
数组
数组元素的使用 二维数组也通过索引符访问自己的元素,如a[0][1], a[1][2]等;需要注意的是索引从0开始,比如声明创建了 一个二维数组a: int a[][] = new int[2][3];

java基础题(附答案)

java基础题(附答案)

java基础题(附答案)基础编程练习,能做几道初学java程序看得懂,但下不了手,高手们说只能多练习,所以找了这些题,是从java私塾跟我学系列课后习题中挑选的一部分,大家一起来做做吧,看看能做多少。

【1】将1 到1000 之间的奇数打印出来。

【2】判断一个数能否同时被3和5 整除。

【3】输入10个数,找出最大一个数,并打印出来。

【4】给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。

90 分以上为’A’,80~89 分为’B’,70~79 分为’C’,60~69 分为’D’,60分以下为’E’。

【5】把一个正整数分解质因数。

【6】打印出如下图案(菱形)*************************【7】请编写一个方法实现如下功能:将1至7 的数字转换为星期日到星期六的字符串。

【8】请编写一个方法实现如下功能:有任意三个整数a,b,c,请输出其中最大的【9】请编写一个方法实现如下功能:将任意三个整数a,b,c按从小到大的顺序输出。

【10】请编写一个方法实现如下功能:用程序找出每位数的立方和等于该数本身值的所有的3 位数。

(水仙花数)【11】请编写一个方法实现如下功能:计算1 加到n (n>=2的整数)的总和。

【12】请编写一个方法实现如下功能:得到一个整数的绝对值。

【13】定义一个长度为10 的一维字符串数组,在每一个元素存放一个单词;然后运行时从命令行输入一个单词,程序判断数组是否包含有这个单词,包含这个单词就打印出“Yes”,不包含就打印出“No”【14】生成一百个随机数,放到数组中,然后排序输出。

【15】统计字符串中英文字母、空格、数字和其它字符的个数。

【16】写一个方法,功能:定义一个一维的int数组,长度为3,把任意三个整数a,b,c赋值给数组,然后将它们按从小到大的顺序输出(使用冒泡排序)【17】有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

Java数组练习题(带答案)

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__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.引用数组元素时,数组下标可以就是_D___A、整型常量B、整型变量C、整型表达式D、以上均可5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前得数组元素个数为____A、 24B、 25C、 18D、 176.下列初始化字符数组得语句中,正确得就是__B__A、 char str[5]="hello";B、charstr[]={'h','e','l','l','o','\0'};C、 char str[5]={"hi"};D、 char str[100]="";7.数组在Java中储存在 C 中A、栈B、队列C、堆D、链表8.下面程序得运行结果就是____main() {int a[][]={{1,2,3},{4,5,6}};System、out、printf("%d", a[1][1]);}A、 3B、 4C、 5D、 69.下面程序得运行结果就是_C___main() {int x=30;int[] numbers=new int[x];x=60;System、out、println(numbers、length);}A、 60B、 20C、 30D、 5010.下面程序得运行结果就是__BDF__main() {char s1[]="ABCDEF"、toCharArray();int i=0;while(s1[i++]!='\0')System、out、println(s1[i++]);}A、 ABCDEFB、 BDFC、 ABCDED、 BCDE11.下面不就是创建数组得正确语句CA、float f[][]=new float[6][6];B、float f[]=new float[6];C、float f[][]=new float[][6];D、float [][]f=new float[6][];12.下面不就是数组复制方法得就是(C)A、用循环语句逐个复制数组B、用方法arraycopyC、用"="进行复制D、用clone方法13.数组a得第三个元素表示为DA、 a(3)B、 a[3]C、a(2)D、 a[2]14.当访问无效得数组下标时,会发生BA、中止程序B、抛出异常C、系统崩溃D、直接跳过15.使用arraycopy()方法将数组a复制到b正确得就是AA、 arraycopy(a,0,b,0,a、length)B、 arraycopy(a,0,b,0,b、length)C、、 arraycopy(b,0,a,0,a、length)D、 arraycopy(a,1,b,1,a、length)16.关于数组默认值,错误得就是 BA、 char--'"u0000'B、 Boolean--trueC、 float--0、0fD、 int-- 017.关于数组作为方法得参数时,向方法传递得就是 AA、数组得引用B、数组得栈地址C、数组自身D、数组得元素18.关于数组复制,下列说法错误得就是ACA、 "="可以实现数组复制B、运用循环语句进行数组复制必须两个数组长度相同C、 arraycopy()方法没有给目标数组分配内存空间D、数组复制就是数组引用得传递19.下列语句会造成数组new int[10]越界就是DA、 a[0] += 9;B、 a[9]=10;C、—a[9]D、for(int i=0;i<=10;i++) a[i]++;20.在JDK环境下编译JAVA源程序使用得命令就是(B )A、javaB、javacC、jvmD、tomcatD、子类不能使用父类得构造方法21.main方法就是java Application 程序执行得入口点。

java数组习题答案

java数组习题答案

java数组习题答案Java数组习题答案在学习Java编程语言的过程中,数组是一个非常重要的概念。

它是一种用来存储相同类型数据的数据结构,可以帮助我们更有效地管理和操作数据。

在学习数组的过程中,我们经常会遇到一些习题,通过解答这些习题可以加深对数组的理解,提高编程能力。

下面我们来看一些常见的Java数组习题及其答案:1. 如何声明一个数组?答:可以使用以下语法来声明一个数组:```javaint[] arr = new int[5];```2. 如何初始化一个数组?答:可以使用以下语法来初始化一个数组:```javaint[] arr = {1, 2, 3, 4, 5};```3. 如何访问数组中的元素?答:可以使用以下语法来访问数组中的元素:```javaint[] arr = {1, 2, 3, 4, 5};System.out.println(arr[2]); // 输出3```4. 如何计算数组中元素的和?答:可以使用以下代码来计算数组中元素的和:```javaint[] arr = {1, 2, 3, 4, 5};int sum = 0;for (int i = 0; i < arr.length; i++) {sum += arr[i];}System.out.println("数组元素的和为:" + sum);```5. 如何找出数组中的最大值和最小值?答:可以使用以下代码来找出数组中的最大值和最小值:```javaint[] arr = {1, 2, 3, 4, 5};int max = arr[0];int min = arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}System.out.println("数组中的最大值为:" + max);System.out.println("数组中的最小值为:" + min);```通过解答这些习题,我们可以更加深入地理解和掌握Java数组的相关知识,提高自己的编程能力。

java基础入门课后习题答案

java基础入门课后习题答案

java基础入门课后习题答案Java基础入门课后习题答案Java是一门广泛应用于软件开发领域的编程语言,掌握Java的基础知识对于想要从事软件开发的人来说是非常重要的。

在学习Java的过程中,课后习题是巩固知识和提高编程能力的重要途径。

本文将为大家提供一些Java基础入门课后习题的答案,希望能够对大家的学习有所帮助。

一、基础语法题1. 编写一个Java程序,输出"Hello, World!"。

```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```2. 编写一个Java程序,计算并输出1到100之间所有偶数的和。

```javapublic class SumOfEvenNumbers {public static void main(String[] args) {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;System.out.println("1到100之间所有偶数的和为:" + sum); }}```3. 编写一个Java程序,判断一个数是否为素数。

```javapublic class PrimeNumber {public static void main(String[] args) {int num = 17;boolean isPrime = true;for (int i = 2; i <= Math.sqrt(num); i++) {if (num % i == 0) {isPrime = false;break;}}if (isPrime) {System.out.println(num + "是素数");} else {System.out.println(num + "不是素数");}}```二、面向对象题1. 编写一个Java类,表示一个学生,包含学生的姓名和年龄,并提供获取和设置姓名、年龄的方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基础J a v a数组练习
题及答案
在开发的时候主方法之中的代码越少越好。

1、将一个给定的整型数组转置输出,
例如:源数组,1 2 3 4 5 6
转置之后的数组,6 5 4 3 2 1
2、现在有如下的一个数组:
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} ;
思路:生活中的问题解决 = 程序中的解决;
1、确定出不为0的个数,这样可以开辟新数组;
2、从旧的数组之中,取出内容,并将其赋给新开辟的数组;
3、现在给出两个数组:
·数组A:“1,7,9,11,13,15,17,19:;
·数组b:“2,4,6,8,10”
两个数组合并为数组c,按升序排列。

主要的目的是熟悉这两个操作的方法,数组扩大,必须要将原始数组的内容拷贝进去。

相关文档
最新文档