黑马程序员技术交流社区

标题: JAVA基础练习题总汇,拿走不谢! [打印本页]

作者: yangben    时间: 2016-5-29 00:32
标题: JAVA基础练习题总汇,拿走不谢!
*Test1--取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq",输出格式为:a(2)b(1)k(2)...


* OK *Test2--假如我们在开发一个系统时需要对员工进行建模,【员工】包含 3 个属性:姓名、工号以及工资。【经理】也是员工,除了含有员工的属性外,另为还有一个奖金属性。请使用继承的思想设计出员工类和经理类。要求类中提供必要的方法进行属性访问。


//*Test3--ArrayList<Integer> list = new ArrayList<Integer>();在这个泛型为Integer的ArrayList中存放一个String类型的对象。


* OK Test4--有五个学生,每个学生有3门课(语文、数学、英语)的成绩,写一个程序接收从键盘输入学生的信息,输入格式为:name,30,30,30(姓名,三门课成绩),然后把输入的学生信息按总分从高到低的顺序写入到一个名称"stu.txt"文件中。要求:stu.txt文件的格式要比较直观,打开这个文件,就可以很清楚的看到学生的信息。


* OK Test5--定义一个文件输入流,调用read(byte[] b)方法将exercise.txt文件中的所有内容打印出来(byte数组的大小限制为5)。


NNNNNNNNN *Test6--自定义字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。


//*Test7--分析以下程序运行结果,说明原理。(没有分析结果不得分)


* OK Test8--将字符串中进行反转。abcde --> edcba


NNNNNNNNNNNNNNN   *Test9--写一方法,打印等长的二维数组,要求从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。 如: n = 4 则打印:


*Test10--28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?


* OK Test11--编写一个类,在main方法中定义一个Map对象(采用泛型),加入若干个对象,然后遍历并打印出各元素的key和value。


//*Test12--方法中的内部类能不能访问方法中的局部变量,为什么?


//*Test13--定义一个交通灯枚举,包含红灯、绿灯、黄灯,需要有获得下一个灯的方法,例如:红灯获取下一个灯是绿灯,绿灯获取下一个灯是黄灯。


//*Test14--编写一个类,增加一个实例方法用于打印一条字符串。并使用反射手段创建该类的对象, 并调用该对象中的方法


NNNNNNNNNNNNN *Test15--把当前文件中的所有文本拷贝,存入一个txt文件,统计每个字符出现的次数并输出,例如:a:  21 次 b:  15 次 c:: 15 次  把:  7 次...


* OK Test16--编写程序,循环接收用户从键盘输入多个字符串,直到输入“end”时循环结束,并将所有已输入的字符串按字典顺序倒序打印。


和46重复 *Test17--一个ArrayList对象aList中存有若干个字符串元素,现欲遍历该ArrayList对象,删除其中所有值为"abc"的字符串元素,请用代码实现。


//*Test18--1.写一个Properties格式的配置文件,配置类的完整名称。写一个程序,2.读取这个Properties配置文件,获得类的完整名称并加载这个类,用反射 的方式运行run方法。


//*Test19--单例模式获取设置配置信息


* OK Test20--编写一个程序,获取10个1至20的随机数,要求随机数不能重复。


//*Test21--声明一个共享数组,起两个线程,两个线程分别隔一段时间(可以写一个随机数),给数组中添加数据,每一个线程为数组添加3个数据即可。


NNNNNNNNNN *Test22--代码实现c盘某个文件夹复制到D盘中,加上代码,加上注释,加上思路。


//*Test23--写一个ArrayList类的代理,实现和ArrayList类中完全相同的功能,并可以计算每个方法运行的时间。


//*Test24--存在一个javaBean,它包含以下几个属性,1Boolean/boolean


* OK Test25--编写一个程序,它先将键盘上输入的一个字符串转换成十进制整数,然后打印出这个十进制整数对应的二进制形式。这个程序要考虑输入的字符串不能转换成一个十进制整数的情况,并对转换失败的原因要区分出是数字太大,还是其中包含有非数字字符的情况。提示:十进制数转二进制数的方式是用这个数除以2,余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2,这次得到的余数就是次低位,如此循环,直到被除数为0为止。其实,只要明白了打印出一个十进制数的每一位的方式(不断除以10,得到的余数就分别是个位,十位,百位),就很容易理解十进制数转二进制数的这种方式。


* OK est26--已知一个int数组,用冒泡排序法对数组中元素进行升序排列。(简单题也不放过)  


//*Test27--自定义枚举week表示星期几,要求每个枚举值都有tolocaleString方法。返回中文格式的星期几。


//*Test28--编写 三个类ticket,sealWindow,ticketSealCenter,代表票信息,售票窗口,售票中心,售票中心分配一定数量的票(多个窗口实现多线程售票)


* OK Test29--编写程序,生成5个1至10之间的随机整数,存入一个List集合,编写方法对List集合进行排序(自定义排序算法,禁用Collections.sort方法和TreeSet),然后遍历集合输出


* OK Test30--编写一个程序,这个程序把一个整数数组中的每个元素用逗号连接成一个字符串,例如,根据内容为[1][2][3]的数组形成内容为"1,2,3"的字符串。


NNNNNNNNNNNNNNNNNN*Test31--金额转换,阿拉伯数字转换成中国传统形式。例如:101000001010 转换为壹仟零壹拾亿零壹仟零壹拾圆整


NNNNNNNNNNN *Test32--编写一个程序,当用户输入一个目录时, 该程序能列出该目录下的所有子目录和文件


NNNNNNNNNNNN *Test33--我们要给每个字母配一个1-26之间的整数,......求最大完美度


//*Test34、用TCP协议写一个客户端和一个服务端,实现上传文件   


NNNNNNNNNNNN *Test35、输入一个路径,将该路径下(包括子文件夹)所有以.txt结尾的文件复制到别的路径


* OK Test36--有100个人围成一个圈,从1开始报数,报到14的这个人就要退出。然后其他人重新开始,从1报数,到14退出。问:最后剩下的是100人中的第几个人?
     
//*Test37--有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b,此方法抛出异常,在ClassA类中有一个方法a,请在这个方法中调用b,然后抛出异常。在客户端有一个类为TestC,有一个方法为c ,请在这个方法中捕捉异常的信息。完成这个例子,请说出java中针对异常的处理机制。


* OK Test38--已知文件a.txt文件中的内容为“bcdeadferwplkou”,请编写程序读取该文件内容,并按照自然顺序排序后输出到b.txt文件中。即b.txt中的文件内容应为“abcd…………..”这样的顺序。
   
//*Test39--一共有四个售票口同时卖100张票,请模拟售票过程输出时要显示是哪个窗口卖第几张票。


* OK Test40--声明类Student,包含3个成员变量:name、age、score,创建5个对象装入TreeSet,按照成绩排序输出结果(考虑成绩相同的问题)。
   
NNNNNNNNNNNN    *Test41--编写程序,将指定目录下所有.java文件拷贝到另一个目的中,并将扩展名改为.txt。


//*Test42--用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?


* OK Test43--编写一个可以获取文件扩展名的函数,形参接收一个文件名字符串,返回一个扩展名字符串。


* OK Test44--判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串
   
* OK Test45--编写程序计算12+22+32+....+1002的和.


* OK Test46-一个ArrayList对象aList中存有若干个字符串元素,现欲遍历该ArrayList对象,删除其中所有值为“abc”的字符串元素,请用代码实现。


*Test47-写一个方法,此方法可将obj对象中名为propertyName的属性的值设置为value


//*Test48-分析运行结果,说明原理。(没有分析结果不得分)


//*Test49-把以下IP存入一个txt文件,编写程序把这些IP按数值大小,从小到达排序并打印出来


*Test50-编写函数,从一个字符串中按字节数截取一部分,但不能截取出半个中文(GBK码表)


//*Test51-Collection和Collections有什么关系?List和Set有什么异同点?Map有哪些常用类,各有什么特点?


* OK Test52-请列举您了解的一些排序算法,并用Java语言实现一个效率较高的


* OK Test53-从键盘接受一个数字,打印该数字表示的时间,最大单位到天,例如: 键盘输入6,打印6秒; 键盘输入60,打印1分; 键盘输入66,打印1分6秒;键盘输入666,打印11分6秒; 键盘输入3601,打印1小时1秒


* OK Test54-编程打印所有的3位质数,质数特点:只能被1和其本身整除


* OK Test55-用控制台程序倒着输出九九乘法表;输出结果按下图所示:


* OK Test56-将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5


* OK Test57- 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。


* OK Test58-求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。


* OK Test59-有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?


* OK Test60-给一个不多于5位的正整数。要求:一、它是几位数,二、逆序打印出各位数字。


* OK Test61-100以内逢7的数去掉  


* OK Test62-键盘录入5个数,存储到一个数组中,取最大值和最小值






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2