1.点类
【问题描述】
MyPoint类表示二维坐标中的一个点,具有两个double类型属性:
横坐标纵坐标
并具有一个构造方法(与类同名的方法)和两个普通方法:
1 构造方法:接收两个double型数据作为参数,分别设定为横坐标和纵坐标。2 display()方法,无参数,输出坐标信息,格式形如"(10.0, 20.0)"。3 getInfo()方法,无参数,返回字符串类型的坐标信息,格式形如"(10.0, 20.0)"。
要求编程实现MyPoint类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
public static void main(String[] args) {MyPoint point;for (int i=0;i<5;i++ ){point = new MyPoint(i*10.0,20.0);point.display();}}
}
【输入形式】
【输出形式】
(0.0,20.0)
(10.0,20.0)
(20.0,20.0)
(30.0,20.0)
(40.0,20.0)
2.圆类1
【问题描述】
MyCircle类表示二维坐标中的一个圆,具有三个double类型属性:
圆心横坐标圆心纵坐标圆半径
并具有一个构造方法(与类同名的方法)和两个普通方法:
1 构造方法:接收三个double型数据作为参数,分别设定为圆心横坐标、圆心纵坐标和圆半径。
2 getArea()方法,无参数,计算并返回圆面积。
3 display()方法,无参数,输出圆心坐标和圆面积,格式形如"Circle Center:(10.0,20.0),radius=10.0,Area=314.0"。
要求编程实现MyCircle类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
public static void main(String[] args) {
MyCircle circle;
for (int i=0;i<5;i++ ){
circle = new MyCircle(10.0,20.0,(i+1)*10);
circle.display();
}
}
}
【输入形式】
【输出形式】
Circle Center:(10.0,20.0),radius=10.0,Area=314.0
Circle Center:(10.0,20.0),radius=20.0,Area=1256.0
Circle Center:(10.0,20.0),radius=30.0,Area=2826.0
Circle Center:(10.0,20.0),radius=40.0,Area=5024.0
Circle Center:(10.0,20.0),radius=50.0,Area=7850.0
3.圆类2
【问题描述】
MyCircle类表示二维坐标中的一个圆,具有两个属性:
圆心,类型MyPoint(类定义见前题) 圆半径,类型double
并具有一个构造方法(与类同名的方法)和两个普通方法:
1 构造方法:接收两个参数(MyPoint对象和double型数据),分别设定为圆心和圆半径。2 getArea()方法,无参数,计算并返回圆面积。 3 display()方法,无参数,输出圆心坐标和圆面积,格式形如"Circle Center:(10.0,20.0),radius=10.0,Area=314.0"。
要求编程实现MyCircle类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
public static void main(String[] args) {MyCircle circle;MyPoint point;point = new MyPoint(10.0,20.0);for (int i=0;i<5;i++ ){circle = new MyCircle(point,(i+1)*10);circle.display();}}
}
【输入形式】
【输出形式】
Circle Center:(10.0,20.0),radius=10.0,Area=314.0
Circle Center:(10.0,20.0),radius=20.0,Area=1256.0
Circle Center:(10.0,20.0),radius=30.0,Area=2826.0
Circle Center:(10.0,20.0),radius=40.0,Area=5024.0
Circle Center:(10.0,20.0),radius=50.0,Area=7850.0
4.同心圆
【问题描述】
ConcentricCircles类表示一组同心圆,具有三个属性:
同心圆圆心,类型MyPoint (类定义同前题)同心圆数组,类型MyCircle数组(类定义同前题)同心圆个数,类型int
并具有一个构造方法(与类同名的方法)和两个普通方法:
1 构造方法:接收两个参数(MyPoint对象和size型数据),分别设定为圆心和同心圆个数,并定义同心圆数组。
2 createCircles()方法:接收一个整型数组作为参数,创建size个同心圆 。
3 sort()方法:对同心圆数组按照面积从小到大排序。
4 display()方法:显示所有圆的信息。
要求编程实现MyCircle类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
public static void main(String[] args) {
int size = 5;
double[] radius = {10.0,5.0,7.0,9.0,15.0};
MyPoint point;
point = new MyPoint(10.0,20.0);
for (int i=0;i<size;i++ ){
System.out.println("radius “+i+”: "+radius[i]);
}
ConcentricCircles cc = new ConcentricCircles(size, point);
cc.createCircles(radius);
cc.sort();
cc.display();
}
}
【输入形式】
【输出形式】
radius 0: 10.0
radius 1: 5.0
radius 2: 7.0
radius 3: 9.0
radius 4: 15.0
Circle Center:(10.0,20.0),radius=5.0,Area=78.5
Circle Center:(10.0,20.0),radius=7.0,Area=153.86
Circle Center:(10.0,20.0),radius=9.0,Area=254.34
Circle Center:(10.0,20.0),radius=10.0,Area=314.0
Circle Center:(10.0,20.0),radius=15.0,Area=706.5
5.接受整数的类
【问题描述】
IntReceiver类可以接受指定范围内的整数值,具有下面四个属性:
最小的可接受值
最大的可接受值
输入提示字符串
错误消息字符串
并具有一个方法:
getValue(),功能是显示 输入提示字符串,然后读取键盘输入的一个整数。如果读取的值不在允许范围内,则显示 错误消息字符串,并重新要求用户输入一个新值,重复以上步骤直到输入了一个可接受的值。最后返回读取到的整数。
要求编程实现IntReceiver类,使给定的Test类能正常运行,并实现指定的输出内容。指定范围为0-100.
Test类代码如下:
public class Test
{
public static void main(String[] args){IntReceiver ir = new IntReceiver();int value;value = ir.getValue();System.out.println("The value is "+value);}
}
【输入形式】
【输出形式】
【样例输入】
【样例输出】
input an integer:124
invalid input!
input an integer:-98
invalid input!
input an integer:587
invalid input!
input an integer:34
The value is 34
6.时间类
【问题描述】
MyTime类可以表示时间(小时+分钟),具有两个整数属性和一个字符串属性:
小时值分钟值错误消息提示
并具有一个构造方法(与类同名的方法)和三个普通方法:
构造方法:接收两个整数作为参数,并进行合理性判断(小时值应在0-23之间,分钟值 应在0-59之间),如合理则分别用于设定小时值 和分钟值,如不合理,则输出错误提示信息,并将小时值 和分钟值均设为0。
setTime()方法,接收两个整数作为参数,并进行合理性判断(小时值应在0-23之间,分钟值 应在0-59之间),如合理则分别用于设定小时值 和分钟值,如不合理,则输出错误提示信息,并保持原值 不变
showTime()方法,输出时间信息,格式形如“Time is 23:18”
getTime12()方法,输出12小时制的时间信息,格式形如“Time in 12—10:35 am”或“Time in 12—10:35 pm”
要求编程实现MyTime类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
static public void main(String args[]){MyTime mt = new MyTime(25,43);mt.showTime();mt = new MyTime(10,35);mt.showTime();System.out.println("Time in 12---"+mt.getTime12());mt.setTime(25,16);mt.showTime();mt.setTime(23,18);mt.showTime();System.out.println("Time in 12---"+mt.getTime12());}
}
【输入形式】
【输出形式】
invalid time value! Time is 0:0
Time is 10:35
Time in 12—10:35 am
invalid time value! Time is 10:35
Time is 23:18
Time in 12—11:18 pm
7.温度转换类
【问题描述】
编写Temperature类,表示摄氏和华氏两种温度,具有两个属性:
double型浮点数表示温度值,
字符表示单位,C表示摄氏,F表示 华氏。
具有构造方法:可设置度的数值和计量单位。
具有四个普通方法:
getC()方法,返回对应的摄氏度,结果保留一位小数
getF()方法,返回对应的华氏度,结果保留一位小数
toString()方法,返回一个形如 "Temperature is 30.0F"的字符串。
compareTo()方法:参数是另一个Temperature对象,根据两个对象所表示的温度值大小的比较结果 ,返回一个字符串:等于返回“ equals to ”, 小于返回“ less than ” 大于返回“ greater than ”
在Test类中分别 对比0C和30F,-40C和-40F,98C和212F,并输出相应信息。
要求编程实现Temperature类,使给定的Test类能正常运行,并实现指定的输出内容。
public class Test{
static public void main(String args[]){Temperature t1 = new Temperature(0,'C');Temperature t2 = new Temperature(30,'F');Temperature t3 = new Temperature(-40,'C');Temperature t4 = new Temperature(-40,'F');Temperature t5 = new Temperature(98,'C');Temperature t6 = new Temperature(212,'F');String comStr;int comInt;System.out.println("t1: "+t1.toString());System.out.println("t2: "+t2.toString());comStr = t1.compareTo(t2);System.out.println("t1 is "+comStr+" t2");System.out.println("-");System.out.println("t3 in F is : "+t3.getF());comStr = t3.compareTo(t4);System.out.println("t3 is "+comStr+" t4");System.out.println("-");System.out.println("t6 in C is : "+t6.getC());comStr = t5.compareTo(t6);System.out.println("t5 is "+comStr+" t6");}
}
【输入形式】
【输出形式】
t1: Temperature is 0.0C
t2: Temperature is 30.0F
t1 is greater than t2
t3 in F is : -40.0
t3 is equals to t4
t6 in C is : 100.0
t5 is less than t6