三 常用系统类库

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

广州大学学生实验报告

开课学院及实验室:电子实验楼418 2010年9月 30日

学院计算机科学与

教育软件学院

年级、专

业、班

08(5)姓名劳康乘学号0823010180

实验课程名称Java实验成绩

实验项目名称实验三包、接口、异常处理指导

老师

樊志平

一、实验目的

1.了解java的预定义类

2.学习使用java的常用类

3.掌握方法覆盖的使用

4.了解日期类和动态数组

二、实验设备(仪器)

Java JCreator,PC

三、实验原理

java程序编写与编译原理

四、实验步骤

1.java常用工具类

在该实验中包含3个练习,分别是针对Math类,基本类型的包装类,Math类中包含有许多常用的数学方法如求绝对值abs()、正弦值sin()、两数当中的较大值max(x,y),而基本类型的包装类则允许将基本的数据类型包装成一个类。

//MathTest.java

import java.util.*;

public class MathTest {

public static void main(String args[]) {

Scanner scanner = new Scanner(System.in);

int intData;

double doubleData;

String intString, doubleString;

System.out.print("请输入整数x和实数y:");

intData = scanner.nextInt();

// 以字符串方式输入实数

doubleString = scanner.next();

// 创建整数对象intObject

Integer intObject = new Integer(intData);

// 返回字符串所对应的数值

doubleData = Double.parseDouble(doubleString);

intData = intObject.intValue();

// 将整数对象的值以字符串形式输出

intString = intObject.toString();

System.out.println("你的输入是:" + intString + "," + doubleData);

// 开始调用Math类的方法进行运算

int intData1 = Math.abs(intData);

System.out.println("abs(x)x的绝对值:" + Math.abs(intData));

System.out.println("ceil(y)y向上取整:" + Math.ceil(doubleData));

System.out.println("f100“y)y向下取整:" + Math.floor(doubleData));

System.out.println("exp(x)e的x次幂:" + Math.exp(intData));

System.out.println("log(x)x的自然对数:" + Math.log(intData1));

System.out.println("max(x,y)x和y中的较大者:" + Math.max(intData, doubleData));

System.out.println("min(x,y)x和y中的较小者:" + Math.min(intData, doubleData));

System.out.println("sin(x)x的正弦值:" + Math.sin(intData));

System.out.println("COS(x)x的余弦值:" + Math.cos(intData));

System.out.println("以x为半径的圆面积:" + Math.PI * intData * intData);

}

}

2.日期类Date和Calendar

在这个练习里用户将会学习如何使用操作时间类Date和Calendar以及控制日期输入输出格式的类DateFormat,程序会要求用户以规范的格式输入自己的生日日期,然后将使用Date类和Calendar类中

的方法计算出用户的生日是星期几,用户的年龄以及出生的年份是否是闰年

//Birthday.java

import java.util.*; //Date,Calendar,Scanner

import java.text.*; //SimpleDateFormat

public class Birthday{

public static void main(String args[])throws ParseException{

String birthday,dayOfWeek=" ";

Date date;

Calendar calendar;

Scanner scanner=new Scanner(System.in);

System.out.println("请输入你的生日日期:yyyy-MM-dd");

birthday=scanner.next();

//创建一个日期格式对象

SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd");

//获得一个包含当前日期和时间的calendar子类的实例

calendar=Calendar.getInstance();

int currentY ear=calendar.get(Calendar.YEAR);

//按输入的birthday产生一个Date对象

date=dateFormat.parse(birthday);

//将date对象的值传递给calendar对象

calendar.setTime(date);

int days=calendar.get(Calendar.DAY_OF_WEEK );

switch(days){

case 1:dayOfWeek="星期日";break;

case 2:dayOfWeek="星期一";break;

case 3:dayOfWeek="星期二";break;

case 4:dayOfWeek="星期三";break;

case 5:dayOfWeek="星期四";break;

case 6:dayOfWeek="星期五";break;

case 7:dayOfWeek="星期六";break;

}

System.out.println("你的生日是:"+dayOfWeek);

int birthY ear=calendar.get(Calendar.YEAR);

if(((birthY ear%4==0)&&(birthY ear%100!=0))||(birthY ear%400==0))

System.out.println(birthYear+"年:是闰年");

else

System.out.println(birthYear+"年:不是闰年");

int age=currentY ear-birthY ear;

System.out.println("你现在是:"+age+"岁");

}

}

3.动态数组V ector类

用户练习使用V ector类,vector类是一个动态数组,能根据实际需要动态地扩充数组大小,同时V ector 类还包含许多方法来操纵数组中的元素,程序中有一个V ector数组,里面包含有几个事先定义的城市名,同时,可以在该数组中增加几个新城市名,并进行一些交互性的操作

//CityV ector.java

import java.util.*;

public class CityV ector{

static String city[]={"北京","上海","广州","深圳"};

public CityV ector()

{

V ector vector=new V ector(6);

Scanner scanner=new Scanner(System.in);

String cityName;

int index;

for(int i=0;i

vector.add(city[i]);

};

//显示出数组信息

displayV ector(vector);

System.out.print("\n请输入数组索引号:");

index =scanner.nextInt();

cityName=(String)vector.get(index);

System.out.println("数组["+index+"]的元素值是:"+cityName);

System.out.print("\n请再输入3个你喜欢的城市:");

for(int i=0;i<3;i++){

cityName=scanner.next();

vector.add(cityName);

}

displayV ector(vector);

System.out.print("\n请输入一个你想查询的城市名:");

cityName=scanner.next();

if(vector.contains(cityName))

System.out.println("在数组中找到:"+cityName+"下标是:"+vector.indexOf(cityName));

else

System.out.println("在数组中没有找到:"+cityName);

System.out.print("\n请输入一个你想删除的城市名:");

cityName =scanner.next();

vector.remove(cityName);

System.out.println(cityName+" 已被删除");

displayV ector(vector);

}

public void displayV ector(V ector vector)

{

System.out.println("\n数组大小:"+vector.size()+

相关文档
最新文档