[2017年整理]Java复习题目

上传人:豆浆 文档编号:910295 上传时间:2017-05-21 格式:DOC 页数:6 大小:66.50KB
返回 下载 相关 举报
[2017年整理]Java复习题目_第1页
第1页 / 共6页
[2017年整理]Java复习题目_第2页
第2页 / 共6页
[2017年整理]Java复习题目_第3页
第3页 / 共6页
[2017年整理]Java复习题目_第4页
第4页 / 共6页
[2017年整理]Java复习题目_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《[2017年整理]Java复习题目》由会员分享,可在线阅读,更多相关《[2017年整理]Java复习题目(6页珍藏版)》请在金锄头文库上搜索。

1、Java 复习题目:一、 基本语法与逻辑类型题目1、 输出九九乘法表(双重循环) 。2、 输出 100 以内的全部素数(循环、分支)3、 输出 Fibonacci 数列的前 20 个数(递推、递归) 。4、 打印出所有的三位水仙花数。5、 将学生的百分制成绩,换算为五分制成绩(分支) 。6、 从键盘输入 2 个长整数和一个运算符,进行加或减运算,输出运算结果。 (输入输出)7、 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数(字符串) 。8、 求 1!+2 !+3!+n!的值(循环)9、 判断一个整数是否为回文数(循环) 。10、 输入三个数,按从小到大的顺序输出(分支) 。

2、11、 已知 S=1-1/2+1/3-1/4+-1/n,求解当 n=100 时的 S 值(循环、分支) 。12、 从控制台输入数字,输出类似以下的图形(循环) 。输入 4 出现如下图形:*二、 数组类型题目1、 将数组的元素前后交换。2、 求 4*4 的矩阵的最大元素的位置,对角线元素的和。3、 有一个已经排好序的数组。现输入一个数,要求按原来的规律插入原数组。4、 将一个数组逆序输出。5、 打印出杨辉三角形(要求打印出 10 行)11 11 2 11 3 3 11 4 6 4 1。 。 。 。 。 。6、 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。7、 数组中有

3、n 个整数,现使其前面各数顺序后移 m 个位置,最后 m 个数变成最前面的 m 个数。三、 类与对象1、设计一个 User 类,其中包括用户名、口令等属性以及构造方法(至少重载 2 个)、获取和设置口令的方法、显示和修改用户名的方法等。编写应用程序测试 User 类。2、定义一个 Student 类,其中包括学号、姓名、性别、出生年月等属性以及 init( )初始化各属性、display( )显示各属性、modify( )修改姓名等方法。实现并测试这个类。3、从上题的 Student 类中派生出 Graduate(研究生) 类,添加属性:专业 subject、导师 adviser。重载相应的成

4、员方法。并测试这个类。4、定义一个接口 Inf,含有常量 和一个实现计算功能的方法 calculate( ),再分别定义一个面积类 area 和一个周长类 circumference,各自按计算圆面积和圆周长具体实现接口中的方法,并以半径为 5 来测试这两个类。5、定义一个类,在 main 方法的 try 块中产生并抛出一个异常,在 catch 块中捕获异常,并输出相应信息,同时加入 finally 子句,输出信息,证明它的无条件执行。6、定义一个类 Caculate 实现 10 以内的整数加减法的计算。自定义一个异常类NumberRangeException,当试图进行超范围运算时,产生相应

5、的信息。编写应用程序进行测试。7、请按照以下要求设计一个学生类 Student,并进行测试。要求如下:(1 ) Student 类中包含姓名、成绩两个属性。(2 ) 分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值。(3 ) Student 类中定义一个无参的构造方法和一个接收两个参数的构造方法,两个参数分别为姓名和成绩属性赋值。(4 ) 在测试类中创建两个 Student 对象,一个使用无参的构造方法,然后调用方法给姓名和成绩赋值,另一个使用有参的构造方法,在构造方法中给姓名和成绩赋值。8、定义一个 Father 和 Child 类,并进行测试。要求如下:(1)Fath

6、er 类为外部类,类中定义一个私有的 String 类型的属性name,name 的值为“zhangsan”。 (2)Child 类为 Father 类的内部类,其中定义一个 introFather()方法,方法中调用 Father 类的 name 属性。 (3)定义一个测试类Test,在 Test 类的 main()方法中,创建 Child 对象,并调用 introFather()方法。9、请按照以下要求设计类。要求如下:1) 设计 Animal 类。类中定义一个成员变量 animalName,表示动物的名称,变量animalName 是 String 类型,默认初始值。在该类中再定义一个成

7、员方法 shout(),表示动物发出叫声的行为,该方法能输出名称为 name 的动物发出叫声,例如输出“波斯猫发出叫声”。2) 设计 Cat 类。使用关键字 extends 继承 Animal 类。Cat 类中定义一个 public 类型的构造方法,该构造方法拥有一个 String 类型的参数 catName,通过该参数,为 Cat 类中继承自 Animal 类的 animalName 成员变量赋值3) 设计一个测试类。类名为 ExtendsTest,在 main 方法中定义一个 String 类型的name 变量,并为它赋值为 ”波斯猫”,然后使用有参构造创建 Cat 类的对象,并使用对象的

8、引用变量调用 shout()方法。10、 设计一个学生类 Student 和它的一个子类 Undergraduate,要求如下:(1 ) Student 类有 name(姓名)和 age(年龄)属性,一个包含两个参数的构造方法,用于给 name 和 age 属性赋值,一个 show 方法打印 Student 的属性信息。(2 ) 本科生类 Undergraduate 增加一个 degree(学位)属性。有一个包含三个参数的构造方法,前两个参数用于给继承的 name 和 age 属性赋值,第三个参数给 degree 专业赋值,一个 show()方法用于打印 Undergraduate 的属性信息

9、。(3 ) 在测试类中分别创建 Student 对象和 Undergraduate 对象,调用它们的show()方法。11、 设计一个 Shape 接口和它的两个实现类 Square 和 Circle,要求如下:(1 ) Shape 接口中有一个抽象方法 area(),方法接收一个 double 类型的参数,返回一个 double 类型的结果。(2 ) Square 和 Circle 中实现了 Shape 接口的 area()抽象方法,分别求正方形和圆形的面积并返回。(3 ) 在测试类中创建 Circle 和 Square 对象,计算半径为 3 的圆形面积和边长为2 的正方形面积。12、 自定

10、义一个异常类 NoThisSongException 和 Player 类,在 Player 的 play()方法中使用自定义异常,要求如下:(1 ) NoThisSongException 继承 Exception 类,类中有一个无参和一个接收一个String 类型参数的构造方法,构造方法中都使用 super 关键字调用父类的构造方法。(2 ) Player 类中定义一个 play(int index)方法,方法接受一个 int 类型的参数,表示播放歌曲的索引,当 index10 时,play()方法用 throw 关键字抛出NoThisSongException 异常,创建异常对象时,调用

11、有参的构造方法,传入“您播放的歌曲不存在”。(3 ) 在测试类中创建 Player 对象,并调用 play()方法测试自定义的NoThisSongException 异常,使用 trycatch 语句捕获异常,调用NoThisSongException 的 getMessage()方法打印出异常信息。四、 字符串与 Java API1、 写一个控制台应用程序,接收一个长度大于 3 的字符串,完成下列功能:1)输出字符串的长度。2)输出字符串中第一个出现字母 a 的位置。3)在字符串的第 3 个字符后面插入子串“hello” ,输出新字符串。4)将字符串“hello”替换为“me”,输出新字符串

12、。5)以字符“m”为分隔符,将字符串分离,并输出分离后的字符串。2、 编一个程序,定义一个字符串数组,输入若干国家名称(所有名称全用大写或者全用小写),设计一个算法按字典顺序将这些国家名称进行排序。3、编写一个程序,实现字符串大小写的转换并倒序输出,要求如下:(1 )使用 for 循环将字符串,如“HelloWorld”从最后一个字符开始遍历;(2 )遍历的当前字符如果是大写字符,就使用 toLowerCase()方法将其转换为小写字符,反之则使用 toUpperCase()方法将其转换为大写字符。(3 )定义一个 StringBuffer 对象,调用 append()方法依次添加遍历的字符,

13、最后调用 StringBuffer 对象的 toString()方法,并将得到的结果输出。五、 集合1、请按照以下要求设计一个 Example01 类。要求如下:1)创建一个 ArrayList 集合 alist,向集合中添加数据,获取集合中元素的个数并打印出第三个元素。2)创建 LinkedList 集合 link,并向 link 添加四个元素。3)向 link 集合的第一个位置插入元素,移除该集合中第三个元素。2、 使用 ArrayList 集合,对其添加 10 个不同的元素,并使用 Iterator 遍历该集合。提示:(1 )使用 add()方法将元素添加到 ArrayList 集合中。

14、(2)调用集合的 iterator()方法获得Iterator 对象,并调用 Iterator 的 hasNext()和 next()方法,迭代出集合中的所有元素。3、 在 HashSet 集合中添加三个 Person 对象,把姓名相同的人当作同一个人,禁止重复添加。提示:Person 类中定义 name 和 age 属性,重写 hashCode()方法和 equals()方法,针对 Person 类的 name 属性进行比较,如果 name 相同, hashCode()方法的返回值相同,equals()方法返回 true。4、选择合适的 Map 集合保存 5 位学员的学号和姓名,然后按学号的

15、自然顺序的倒序将这些键值对一一打印出来。提示:(1)创建 TreeMap 集合。(2 )使用 put()方法将学号(“1”,”2”,”3”,”4”,”5”)和姓名(“Lucy”,”John”,”Smith”,”Aimee”,”Amanda”)存储到 Map 中,存的时候可以打乱顺序观察排序后的效果。(3)使用 map.keySet()获取键的 Set 集合;(4)使用Set 集合的 iterator()方法获得 Iterator 对象用于迭代键。( 5)使用 Map 集合的 get()方法获取键所对应的值。六、 IO1、 编写一个 application 程序,分别用字节流和字符流拷贝一个文本

16、文件,同时将复制的内容显示在屏幕上。2、 编写程序,读入文本文件的内容,统计出文件中的单词个数。3、 应用 FileInputStream 类,编写应用程序,从磁盘上读取一个 Java 程序,并将源程序代码显示在屏幕上。 (被读取的文件路径为:E:/myjava/Hello.java)4、 编写一个 Java 程序将当 100,101,102,103,104,105 个数以数组的形式写入到 Dest.txt文件中,并以相反的顺序读出显示在屏幕上。5、 请按照以下要求设计 ListFilesExample 类。要求如下:(1 ) 该类能够实现遍历指定目录(例如 E: cnitcastchapter08)及其子目录下所有文件,并输出所有文件名的功能(2 )该类定义一个无返回值的静态成员方法 fileDir(File dir),方法中形参可以接收待遍历目录的 java.io.File 类型对象。使用 File 类中的 listFiles()方法和 isD

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号