版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验8Java基本类库一、实验目的 了解Java常用的系统类,包括Object类、数学函数类、日期类、随机数类以及系统类、基本类型的包装类等的基本使用方法;理解Java系统类的构成。二、实验要求1.掌握数学函数类的使用方法。2.掌握日期类的使用方法。3.掌握常见的基本类型包装类的基本使用方法。4.熟悉Object类的使用方法。5.掌握与常用类有关的算法与编程。三、实验内容(一)使用数学函数类Math是一最终类含有基本数学运算函数如指数运算对数运算求平方根三角函数随机数等,可以直接在程序中加Math.前缀调用。1.使用Math中random()方法产生随机数的Math类应用程序mathTest1.java,源程序如下。importjava.util.*;publicclassmathTest1{ publicstaticvoidmain(Stringargs[]){ inti1=(int)(Math.random()*100);//产生大于等于0小于100的随机数 inti2=(int)(Math.random()*100);//同上 doublei3=Math.random()*100;//产生大于等于0.0小于1.0的随机数 doublei4=Math.random()*100;//同上 doubled1=Math.sin(Math.toRadians(60.0)); doubled2=Math.log(Math.E); doubled3=Math.pow(2.0,4.0); intr=Math.round(43.6F); System.out.println("i1的随机数为"+i1); System.out.println("i2的随机数为"+i2); System.out.println("d1的随机数为"+i3); System.out.println("d2的随机数为"+i4); System.out.println("60弧度的正弦值:Math.sin(Math.toRadians(60.0))="+d1); System.out.println("E的对数值:Math.log(Math.E)="+d2); System.out.println("2的4次方:Math.pow(2.0,4.0)="+d3); System.out.println("43.6F四舍五入:Math.round(43.6F)="+r); }}2.使用Random类产生随机数的Math类应用程序mathTest2.java,源程序如下。importjava.util.*;publicclassmathTest2{ publicstaticvoidmain(Stringargs[]){ Randomr1=newRandom(1234567890L); Randomr2=newRandom(1234567890L); booleanb=r1.nextBoolean();//随机数不为0时取真值 inti1=r1.nextInt(100);//产生大于等于0小于100的随机数 inti2=r2.nextInt(100);//同上 doublei3=r1.nextDouble();//产生大于等于0.0小于1.0的随机数 doublei4=r2.nextDouble();//同上 doubled1=Math.sin(Math.toRadians(60.0)); doubled2=Math.log(Math.E); doubled3=Math.pow(2.0,4.0); intr=Math.round(43.6F); System.out.println("b的随机数不为0时"+b); System.out.println("i1的随机数为"+i1); System.out.println("i2的随机数为"+i2); System.out.println("d1的随机数为"+i3); System.out.println("d2的随机数为"+i4); System.out.println("60弧度的正弦值:Math.sin(Math.toRadians(60.0))="+d1); System.out.println("E的对数值:Math.log(Math.E)="+d2); System.out.println("2的4次方:Math.pow(2.0,4.0)="+d3); System.out.println("43.6F四舍五入:Math.round(43.6F)="+r); }}(二)使用日期类Java提供了3个日期类DateCalendar和ateFormat。其,Date类要用于创建日期对象并获取日期,Calendar类可获取和设置日期,DateFormat类用来设置日期的格式。Java语言规定的基准日期为1970.1.100:00:00格林威治(GMT)标准时间,当前日期是由基准日期开始所经历的毫秒数转换出来的。1.使用日期类的Applet应用程序(1)程序功能:说明3个日期类Date、Calendar和DateFormat的使用方式及显示的样式。(2)编写TestDateCalendar1.java程序文件,源代码如下。importjava.text.*;importjava.util.*;importjava.awt.*;importjava.applet.*;publicclassTestDateCalendar1extendsApplet{ publicvoidpaint(Graphicsg){ Datetoday; Calendarnow; DateFormatf1,f2; Strings1,s2; today=newDate();//获取系统当前日期 g.drawString("字符串格式:"+today.toString(),20,20); f1=DateFormat.getInstance();//以默认格式生成格式化器 s1=f1.format(today);//将日期转换为字符串 g.drawString("系统格式:"+s1,20,40); //生成长格式的中国日期格式化器 f1=DateFormat.getDateInstance(DateFormat.LONG,Locale.CHINA); //生成长格式的中国时间格式化器 f2=DateFormat.getTimeInstance(DateFormat.LONG,Locale.CHINA); s1=f1.format(today);//将日期转换为日期字符串 s2=f2.format(today);//将日期转换为时间字符串 g.drawString("中国格式:"+s1+""+s2,20,60); now=Calendar.getInstance();//获取系统时间 s1=now.get(now.HOUR)+"时"+now.get(now.MINUTE)+"分" +now.get(now.SECOND)+"秒"; g.drawString("调整前时间:"+s1,20,80); now.set(2004,8,15,9,9,9); today=now.getTime(); g.drawString("调整后时间:"+today.toString(),20,100); }}(3)编译程序文件。(4)在Eclipse中运行Applet,显示结果如图10.2所示。图10.22.在独立运行的应用程序中使用日期函数。(1)程序能:补充说明3个日类DateCalendar和DateFormat的用方式及显示的样式。(2)编写TestDateCalendar2.java程序文件,源代码如下。importjava.util.*;importjava.text.*;publicclassTestDateCalendar2{ publicstaticvoidmain(Stringargs[]){ Datetoday=newDate();//当前日期和时间 SimpleDateFormatsdf; sdf=newSimpleDateFormat("yyyy年MM月dd日hh时mm分ss秒aEEEEE"); System.out.println("当前日期和时间:"+sdf.format(today)); longhms=System.currentTimeMillis();//当前时间的毫秒数 System.out.println("当前时间的毫秒数="+hms); Datetomorrow=newDate(hms+24*60*60*1000); System.out.println("明天是"+sdf.format(tomorrow)); Calendarnow=Calendar.getInstance(); intyear=now.get(Calendar.YEAR);//年份 intmonth=now.get(Calendar.MONTH)+1;//月份 intday=now.get(Calendar.DATE);//日期 System.out.print("今天是"+year+"年"+month+"月"+day+"日"); intweek=now.get(Calendar.DAY_OF_WEEK);//星期 switch(week){ case1: System.out.println(" 星期日"); break; case2: System.out.println(" 星期一"); break; case3: System.out.println(" 星期二"); break; case4: System.out.println(" 星期三"); break; case5: System.out.println(" 星期四"); break; case6: System.out.println(" 星期五"); break; case7: System.out.println(" 星期六"); break; } }}(3)编译并运行程序,结果如图所示。3.编写程序首先声明使用的包名jacky然后创建YMD该类具有两个成员方法,功能分别为计算今年的年份以及输出一个带有年月日的字符串。4.编写使用包jacky中YMD类的程序,LX.java程序能给定某人姓名与出生日期计算该人年龄并输出该人姓名年龄,出生日期。程序使用YMD的计算年份的方法来计算年龄。(三)使用向量类Vector大多数编程语言中的数组是固定长度的,即数组一经建立就不能在使用过程中改变其长度。Java引入Vector类来创建可以改变长度的变量。Vector被设计一个能不断增长的序列,它类似于可变长数组,但功能更加强大,因为任何类型的对象都可以放入Vector的对象中。通过调用Vector封装的方法,可以随时添加或删除向量元素,以及增加或缩短向量序列的长度。1.创建使用Vector向量类的应用程序(1程序能创建一个Vector象v先通键盘为args[]输入两个量然后赋值给对象v,并通过直接方式为其分量赋值。(2)编写LX8_4.java程序文件,源代码如下。 importjava.util.*; publicclassLX8_4{ publicstaticvoidmain(Stringargs[]){ Vectorv=newVector(1,1); v.addElement(args[0]);//在向量尾部添加元素 v.addElement(args[1]); v.addElement("3");//在向量尾部添加元素 v.insertElementAt("0",0);//在指定位置插入元素 v.insertElementAt("aaa字符串元素",3); v.setElementAt("4",4);//替换指定位置的元素 v.addElement("5"); System.out.println("第4号元素为:"+v.elementAt(4)); Enumerationenum=v.elements();//枚举化对象,以便逐个取出元素 StringBufferbuffer=newStringBuffer();//字符串缓冲区 while(enum.hasMoreElements()) buffer.append(enum.nextElement()).append(","); buffer.deleteCharAt(buffer.length()-1); System.out.println("向量v的所有元素:"+buffer.toString()+"\n"); System.out.println("向量v的元素个数="+v.size()+"v的长度为:"+v.capacity()+"\n"); v.removeAllElements();System.out.println("删除后元素个数:"+v.size()+" 向量v长度:"+v.capacity()+"\n"); }}2.编译并运行程序,结果如图10.4所示。图10.4(四)使用基本类型包装类Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(WrapperClass)。包装类对应表基本数据类型包装类byteBytebooleanBooleanshortShortcharCharacterintIntegerlongLongfloatFloatdoubleDouble1.测试下面程序,掌握包装类的使用方法publicclassTest1{ publicstaticvoidmain(String[]args){ intn=10; Integerin=newInteger(100); Integerin1=newInteger(n); intm=Value(); System.out.println(in.toString()); System.out.println("m="+m); Integerin2=Integer.valueOf(20); System.out.println(in2.toString()); Strings="123"; intk=Integer.parseInt(s); System.out.println("k="+k); //测试其它数值类型....... charc='x'; Characterch=newCharacter(c); System.out.println(ch.toString()); charc1=ch.charValue(); System.out.println(c1); System.out.println(Character.isDigit('6')); System.out.println(Character.isLetter('a')); System.out.println(Character.isLetterOrDigit('6')); System.out.println(Character.isLowerCase('a')); System.out.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度出租车行业节能减排技术创新合同4篇
- 二零二五年度充电桩储能系统设计与建设合同3篇
- 2025秀屿区文印中心企业宣传册制作承包经营合同3篇
- 2025版外墙瓷砖购销及质量检测认证合同3篇
- 二零二五年度家暴受害者离婚财产合理分配与子女权益保护合同
- 临时土地使用租赁合同(2024版)
- 2025年度智能化煤炭采购合同书4篇
- 二零二五年度农民工社会保险委托代缴服务协议
- 二零二五年度变压器安装与电网运行维护合同6篇
- 2025年度美容院连锁加盟经营管理合同
- 2024年正定县国资产控股运营集团限公司面向社会公开招聘工作人员高频考题难、易错点模拟试题(共500题)附带答案详解
- 智能衣服方案
- 李克勤红日标准粤语注音歌词
- 教科版六年级下册科学第一单元《小小工程师》教材分析及全部教案(定稿;共7课时)
- 中药材产地加工技术规程 第1部分:黄草乌
- 危险化学品经营单位安全生产考试题库
- 案例分析:美国纽约高楼防火设计课件
- 老客户维护方案
- 移动商务内容运营(吴洪贵)任务一 用户定位与选题
- 2021年高考化学真题和模拟题分类汇编专题20工业流程题含解析
- 工作证明模板下载免费
评论
0/150
提交评论