实验二常用类与异常处理.doc_第1页
实验二常用类与异常处理.doc_第2页
实验二常用类与异常处理.doc_第3页
实验二常用类与异常处理.doc_第4页
实验二常用类与异常处理.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

甘肃政法学院本科生实验报告(二)姓名:学院:专业:班级:实验课程名称:JavaSE程序设计 实验日期:2014年4月16日指导教师及职称:实验成绩:开课时间:20142015学年第1学期甘肃政法学院实验管理中心印制实验题目常用类与异常处理小组合作否姓名班级学 号一、实验目的1掌握Java语言的异常处理机制。2掌握Java语言中常用的实用类。 3理解什么是异常。4掌握异常处理方法:抛出异常、捕捉和处理异常。5掌握自定义异常类。6. 掌握java String类的各个常用方法的应用。7. 掌握Date类和Calendar类的各个常用方法的应用。8. 掌握StringTokenizer类的用法。9. 了解正则表达式的用法10. 掌握简单的异常处理流程。11. 内部类的应用二实验环境(1) 配置好环境变量的PC计算机(2) 应用Eclipse进行Java代码的编写、调试及运行三、实验内容与步骤1、 String类的常用方法应用。class StringExample public static void main(String args) String s1=new String(you are a student), s2=new String(how are you); if(s1.equals(s2) / 使用equals方法判断s1与s2是否相同 System.out.println(s1与s2相同); else System.out.println(s1与s2不相同); String s3=new String(22030219851022024); if(s3.startsWith(220302) /判断s3的前缀是否是“220302”。 System.out.println(吉林省的身份证); String s4=new String(你), s5=new String(我); if(pareTo(s5)0)/按着字典序s4大于s5的表达式。 System.out.println(按字典序s4大于s5); else System.out.println(按字典序s4小于s5); int position=0; String path=c:javajspA.java; position=path.lastIndexOf(); /获取path中最后出现目录分隔符号的位置 System.out.println(c:javajspA.java中最后出现的位置:+position); String fileName=path.substring(12,18 );/获取path中“A.java”子字符串。 System.out.println(c:javajspA.java中含有的文件名:+fileName); String s6=new String(100), s7=new String(123.678); int n1=Integer.parseInt(s6); /将s6转化成int型数据。 double n2=Double.parseDouble(s7); /将s7转化成double型数据。 double m=n1+n2; System.out.println(m); String s8=String.valueOf(m); /String调用valuOf(int n)方法将m转化为字符串对象 position=s8.indexOf(.); String temp=s8.substring(position+1); System.out.println(数字+m+有+temp.length()+位小数) ; String s9=new String(ABCDEF); char a=s8.toCharArray(); /将s8存放到数组a中。 for(int i=a.length-1;i=0;i-) System.out.print( +ai); 2、 Date类和Calendar类的各个常用方法的应用:比较日期的大小。package p.i;import java.util.*;import javax.swing.JOptionPane;public class DateExample public static void main(String args ) String str=JOptionPane.showInputDialog(输入第一个日期的年份:); int yearOne=Integer.parseInt(str); str=JOptionPane.showInputDialog(输入该年的月份:); int monthOne=Integer.parseInt(str); str=JOptionPane.showInputDialog(输入该月份的日期:); int dayOne=Integer.parseInt(str); str=JOptionPane.showInputDialog(输入第二个日期的年份:); int yearTwo=Integer.parseInt(str); str=JOptionPane.showInputDialog(输入该年的月份:); int monthTwo=Integer.parseInt(str); str=JOptionPane.showInputDialog(输入该月份的日期:); int dayTwo=Integer.parseInt(str); Calendar calendar=Calendar.getInstance(); /初始化日历对象 calendar.set(yearOne, monthOne, dayOne); /将calendar的时间设置为yearOne年monthOne月dayOne日 long timeOne=calendar.getTimeInMillis(); /calendar表示的时间转换成毫秒 calendar.set(yearTwo, monthTwo, dayTwo); /将calendar的时间设置为yearTwo年monthTwo月dayTwo日 long timeTwo=calendar.getTimeInMillis(); /calendar表示的时间转换成毫秒。 Date date1=new Date (timeOne/(1000*60*60*24); / 用timeOne做参数构造date1 Date date2=new Date (timeTwo/(1000*60*60*24); / 用timeTwo做参数构造date2 if(date2.equals(date1) System.out.println(两个日期的年、月、日完全相同); else if(date2.after(date1) System.out.println(您输入的第二个日期大于第一个日期); else if(date2.before(date1) System.out.println(您输入的第二个日期小于第一个日期); long days=(timeOne-timeTwo)/(1000*60*60*24);/计算两个日期相隔天数 System.out.println(yearOne+年+monthOne+月+dayOne+日和 +yearTwo+年+monthTwo+月+dayTwo+相隔+days+天); 3、 处理大整数package j.u;/BigintegerExampleimport java.math.*;class BigIntegerExample public static void main(String args) BigInteger n1=new BigInteger(987654321987654321987654321), n2=new BigInteger(123456789123456789123456789), result=null; result=n1.add(n2);/n1和n2做加法运算 System.out.println(和:+result.toString(); result=n1.subtract(n2);/n1和n2做减法运算 System.out.println(差:+result.toString(); result=n1.multiply(n2);/n1和n2做乘法运算 System.out.println(积:+result.toString(); result=n1.divide(n2);/n1和n2做除法运算 System.out.println(商:+result.toString(); BigInteger m=new BigInteger(1968957), COUNT=new BigInteger(0), ONE=new BigInteger(1), TWO=new BigInteger(2);System.out.println(m.toString()+的因子有:); for(BigInteger i=TWO;pareTo(m)0;i=i.add(ONE) if(n1.remainder(i).compareTo(BigInteger.ZERO)=0) COUNT=COUNT.add(ONE); System.out.print( +i.toString(); System.out.println(); System.out.println(m.toString()+一共有+COUNT.toString()+个因子); 4、 红牛农场package w.m;/RedCowForm.javapublic class RedCowForm String formName; RedCow cow; /用内部类RedCow声明对象cow RedCowForm() RedCowForm(String s) cow=new RedCow(150,130,4500); /创建cow formName=s; public void showCowMess() cow.speak(); class RedCow /内部类的声明 String cowName=红牛; int height,weight,price; RedCow(int h,int w,int p) height=h; weight=w; price=p; void speak() System.out.println(cowName+,身高:+height+cm 体重:+weight+kg); System.out.println(生活在+formName); package w.m;/MainClass.javapublic class MainClass public static void main(String args) RedCowForm form = new RedCowForm(红牛农场); form.showCowMess(); 5、检查危险品package e.d;/Check.javapublic class Check public static void main(String args) Machine machine = new Machine(); String name =苹果,炸药,西服,硫酸,手表,硫磺; Goods goods = new Goodsname.length; /检查6件物品 for(int i= 0;iname.length;i+) goodsi = new Goods(); if(i%2=0) goodsi.setIsDanger(false); goodsi.setName(namei); else goodsi.setIsDanger(true); goodsi.setName(namei); for(int i= 0;igoods.length;i+) try machine.checkBag(goodsi); System.out.println(goodsi.getName()+检查通过); catch(DangerException e) e.toShow(); /e调用toShow()方法 System.out.println(goodsi.getName()+被禁止!); package e.d;/DangerException.javaclass DangerException extends Exception String message; public DangerException() message = 危险品!; public void toShow() System.out.print(message+ ); package e.d;/Goods.javaclass Goods boolean isDanger; String name; public void setIsDanger(boolean boo) isDanger = boo; public boolean isDanger() return isDanger; public void setName(String s) name = s; public String getName() return name; package e.d;/Machine.javaclass Machine boolean isDanger; String name; public void setIsDanger(boolean boo) isDanger = boo; public void checkBag(Goods goods)throws DangerException if (goods.isDanger()=true) throw new DangerException(); 6、StringTokenizer的应用package r.o;/FoundPrice.javaimport java.util.*;public class FoundPrice public static void main(String args) String s=牛奶:89.8元,香肠:12.9元 啤酒:69元 巧克力:132元; String regex=0123456789. ; /匹配非数字的正则表达识 String digitMess=s.replaceAll(regex,*); StringTokenizer fenxi=new StringTokenizer(digitMess);/创建fenxi,用*做分隔标记解析digitMess中的单词 int number=fenxi.countTokens(); /fenxi调用countTokens()方法返回单词数量 double sum=0; while(fenxi.hasMoreTokens() String str=fenxi.nextToken();/fenxi调用nextToken()方法返回单词 System.out.println(str); sum=sum+Double.parseDouble(str); System.out.println(购物小票中的商品种类:+number+种); System.out.println(购物小票中的价格总额:+sum+元); 7、正则表达式的应用package i.p;import java.util.regex.*;public class ReplaceIP public static void main(String args ) String

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论