JAVA高级练习题(共24页).doc

上传人:飞****2 文档编号:13829091 上传时间:2022-05-01 格式:DOC 页数:24 大小:151.50KB
返回 下载 相关 举报
JAVA高级练习题(共24页).doc_第1页
第1页 / 共24页
JAVA高级练习题(共24页).doc_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《JAVA高级练习题(共24页).doc》由会员分享,可在线阅读,更多相关《JAVA高级练习题(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上1、 编写一个程序,实现从命令行参数输入两个字符串类型的数值,并计算输出两个数值的和。2、编写一个程序,实现从命令行参数输入一字符串,统计该字符串中字符“e”出现的次数。package zuoye;/* * 输出e的出现次数 */import java.util.Scanner;public class Test2 public static void main(String args) Scanner input = new Scanner(System.in);String str=input.next();int count=0;for (int i = 0;

2、i str.length(); i+) if(str.charAt(i)=e)count+;System.out.println(e的出现次数是:+count);3、生成十个0100之间的随机数,放到数组中,然后排序输出。package zuoye;import java.util.Arrays;/* * 生成十个0100之间的随机数,放到数组中,然后排序输出 * author Administrator * */public class Test3 public static void main(String args) int arr=new int10;/定义一个长度为10的int数组f

3、or (int i = 0; i s.lastIndexOf(.)System.out.println(邮箱地址中.出现在的前面);return false;for(int i=0;i=a&s.charAt(i)=A&s.charAt(i)=Z)elseSystem.out.println(用户名里有其他字符);return false;return true;package youxiang;public class Test public static void main(String args) / TODO Auto-generated method stubif(MailTest.t

4、estMail()System.out.println(邮箱格式合法);elseSystem.out.println(邮箱格式不合法);6、分别在控制台输入字符串和子字符串,并计算字符串中子字符串出现的次数。package zuoye;import java.util.Scanner;/* * 控制台输入一段字符串,再查询一段子字符串出现的次数 * */public class Test6 public static void main(String args) Scanner input = new Scanner(System.in);String a = input.next();Str

5、ing b = input.next();int count = 0;/计数器for(int i = 0;ia.length()-b.length();i=a.indexOf(b, i)+1)if(a.indexOf(b, i)!=-1)count+;System.out.println(count);集合类1、请使用LinkedList来模拟一个队列(先进先出的特性):1) 拥有放入对象的方法void put(Object o)2) 取出对象的方法Object get()3) 判断队列当中是否为空的方法boolean isEmpty();并且,编写测试代码,验证你的队列是否正确。public

6、 class Linkeds List l;Linkeds()l=new LinkedList();public void put(Object o)l.add(o);public Object get()Object o= l.get(0);l.remove(0);return o;public boolean isEmpty()if(l.isEmpty()return true;return false;public static void main(String args)/定义一个空队列Linkeds l = new Linkeds();/往队列中放入对象l.put(Tom1);l.p

7、ut(John2);l.put(Mary3);/如果队列不为空,依次输出队列中的元素while(!l.isEmpty()System.out.println(l.get();2、假设顺序列表ArrayList中存储的元素是整型数字15,遍历每个元素,将每个元素顺序输出。package zuoye;import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class Test1 public static void main(String args) List list=new ArrayL

8、ist();Number n1=new Number(1);Number n2=new Number(2);Number n3=new Number(3);Number n4=new Number(4);Number n5=new Number(5);list.add(n1);list.add(n2);list.add(n3);list.add(n4);list.add(n5);Iterator it=list.iterator();while(it.hasNext()System.out.print(it.next();3、在一个列表中存储以下元素:apple,grape,banana,pe

9、ar1)返回集合中的最大的和最小的元素2)将集合进行排序,并将排序后的结果打印在控制台上package zuoye;public class Fruit private String fruit;public Fruit()public Fruit(String fruit)this.fruit=fruit;public String getFruit() return fruit;public void setFruit(String fruit) this.fruit = fruit;package zuoye;import java.util.Arrays;import java.uti

10、l.Collections;import java.util.List;public class FruitTest public static void main(String args) List fruit = Arrays.asList(apple grade banana pear.split( );System.out.println(最大值是: + Collections.max(fruit);System.out.println(最小值是: + Collections.min(fruit);4、编写一个程序,创建一个HashMap对象,用于存储银行储户的信息(其中储户的主要信息

11、有储户的ID,姓名和余额)。另外,计算并显示其中某个储户的当前余额。package zuoye;public class Bank private String id;private String name;private double money;public Bank()public Bank(String id,String name,double money)this.id=id;this.name=name;this.money=money;public String getId() return id;public void setId(String id) this.id = i

12、d;public String getName() return name;public void setName(String name) this.name = name;public double getMoney() return money;public void setMoney(double money) this.money = money;package zuoye;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;public class

13、BankTest public static void main(String args) Map map=new HashMap();map.put(用户1, new Bank(1,张三,Math.random()*);map.put(用户2, new Bank(2,李四,Math.random()*);map.put(用户3, new Bank(3,王五,Math.random()*);map.put(用户4, new Bank(4,赵六,Math.random()*);Set keySet=map.keySet();Iterator it = keySet.iterator(); dou

14、ble sum = 0; while(it.hasNext() Object key = it.next(); Bank a = map.get(key); System.out.println(账户+a.getId()+的余额:+a.getMoney(); /计算所有帐户的余额之和 sum += a.getMoney(); System.out.println(所有账户余额:+sum);5、从控制台输入若干个单词(输入回车结束)放入集合中,将这些单词排序后(忽略大小写)打印出来。package zuoye;import java.util.ArrayList;import java.util

15、.List;import java.util.Scanner;public class Test5 public static void main(String args) Scanner input = new Scanner(System.in);List list = new ArrayList();String str = input.nextLine();String arr = str.split( );String tmp;for (int i = 0; i arr.length; i+) for (int j = i + 1; j 0) str = arrj;arrj = ar

16、rj + 1;arrj + 1 = str;for (String a : arr) list.add(a);System.out.println(a);IO流1、在本机的磁盘系统中,找一个文件夹,利用File类的提供方法,列出该文件夹中的所有文件的文件名和文件的路径,执行效果如下:-路径名:c:tempdef.txt package 作业;import java.io.File;public class Test1 public static void main(String args) File file = new File(E:新建文件夹);String files = file.li

17、st();for (String o : files) System.out.println(文件名: + o);System.out.println(路径: + file.getAbsolutePath() + + o);System.out.println(-);2、编写一个java程序实现文件复制功能,要求将d:/io/copysrc.doc中的内容复制到d:/io/copydes.doc中。package 作业;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;/* *

18、文件的拷贝 */public class Test2 public static void main(String args) File file = new File(fileabc.txt);File file_back = new File(fileabc_back.txt);try (FileInputStream fi = new FileInputStream(file); FileOutputStream fo = new FileOutputStream(file_back);) int b = -1;while (b = fi.read() != -1) fo.write(b

19、); catch (Exception e) e.printStackTrace();System.out.println(拷貝成功!);3、创建c:/test.txt文件并在其中输入hello world创建一个输入流读取该文件中的文本并且把小写的l变成大写L再利用输出流写入到d:test.txt中实现步骤:1.在本地硬盘C盘下创建一个文件test.txt 2.创建一个包含main()方法的类,并在main中编写代码 3运行代码并且测试结果实现过滤器的功能效果显示:package 作业;import java.io.BufferedReader;import java.io.Buffered

20、Writer;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;/* * 替换文件中的小写字母l为大写字母L */public class Test3 public static void main(String args) FileReader f;String s = ;BufferedReader br = null;try f = new FileReader(F:test.txt);br = new Bu

21、fferedReader(f);s = br.readLine();System.out.println(源文件 + s);s = s.replace(l, L); catch (FileNotFoundException e) e.printStackTrace(); catch (IOException e) e.printStackTrace(); finally try br.close(); catch (IOException e) e.printStackTrace();BufferedWriter bw = null;System.out.println(s);try File

22、Writer fw = new FileWriter(F:test.txt);bw = new BufferedWriter(fw);bw.write(s); catch (IOException e) e.printStackTrace(); finally try bw.close(); catch (IOException e) e.printStackTrace();4、在程序中创建一个Student类型的对象,并把对象信息保存到d:/io/student.txt文件中,然后再从文件中把Student对象的信息读出显示在控制台上,Student类的描述如下:package 作业;imp

23、ort java.util.Date;public class Student private int id;private String name;private Date birth;public Student() super();public Student(int id, String name, Date birth) super();this.id = id;this.name = name;this.birth = birth;public int getId() return id;public void setId(int id) this.id = id;public S

24、tring getName() return name;public void setName(String name) this.name = name;public Date getBirth() return birth;public void setBirth(Date birth) this.birth = birth;Overridepublic String toString() return Student id= + id + , name= + name + , birth= + birth + ;public class SerializationExercise pub

25、lic static void main(String args)Student s1 = new Student(1,zhangsan,1999-11-11);try FileOutputStream fos = new FileOutputStream(d:iostudent.txt);ObjectOutputStream oos = new ObjectOutputStream(fos);System.out.println(对象序列化.);oos.writeObject(s1);oos.flush();oos.close(); catch (FileNotFoundException

26、e1) System.out.println(e1.getMessage(); catch (IOException e2) System.out.println(e2.getMessage();try FileInputStream fis = new FileInputStream(d:iostudent.txt);ObjectInputStream ois = new ObjectInputStream(fis);System.out.println(反序列化.);Student ss1 = (Student)ois.readObject();System.out.println(ss1

27、);ois.close(); catch (FileNotFoundException e) System.out.println(e.getMessage(); catch (IOException e) System.out.println(e.getMessage(); catch (ClassNotFoundException e) System.out.println(e.getMessage();多线程1、利用Thread实现,要求多线程求解某范围素数每个线程负责1000范围:线程1找1-1000;线程2找1001-2000;线程3找2001-3000。编程程序将每个线程找到的素数

28、及时打印。package 找素数;public class Number private int num;public Number() super();public Number(int num) super();this.num = num;public int getNum() return num;public void setNum(int num) this.num = num;public synchronized void checkNum(int num) if (num = 1000) for (int n = 2; n = num; n+) boolean b = tru

29、e;if (n != 1) for (int i = 2; i n; i+) if (n % i = 0) b = false;break;if (b) System.out.println(n + 是质数);if (num = 2000) for (int n = 1001; n = num; n+) boolean b = true;if (n != 1) for (int i = 2; i n; i+) if (n % i = 0) b = false;break;if (b) System.out.println(n + 是质数);if (num = 3000) for (int n

30、= 2001; n = num; n+) boolean b = true;if (n != 1) for (int i = 2; i n; i+) if (n % i = 0) b = false;break;if (b) System.out.println(n + 是质数);package 找素数;/public class Numbers1 implements Runnablepublic class Numbers1 extends Thread private Number num;public Numbers1(Number num) this.num=num;public v

31、oid run() num.checkNum(1000);package 找素数;/public class Numbers1 implements Runnablepublic class Numbers2 extends Thread private Number num;public Numbers2(Number num) this.num=num;public void run() num.checkNum(2000);package 找素数;/public class Numbers1 implements Runnablepublic class Numbers3 extends

32、 Thread private Number num;public Numbers3(Number num) this.num=num;public void run() num.checkNum(3000);package 找素数;public class Test public static void main(String args) Number num=new Number();Numbers1 n1=new Numbers1(num);Thread t1=new Thread(n1);t1.setName(11000:);t1.start();Numbers2 n2=new Numbers2(num);Thread t2=new Thread(n2);t2.setName(10012000:);t2.start();Numbers3 n3=new Numbers3(num);Thread t3=new Thread(n3);t3.setName(20013000);t3.start();2、利用Runnable实现,要求多线程求解某范围素数每个线程负责1000范围:线程1找1-1000;线程2找1

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁