140 - 家电类
Description
某大型家电企业拥有一批送货卡车,运送电视机、洗衣机、空调等家电。编程计算每个卡车所装载货物的总重量。
要求有一个Appliance(家电)接口和有三个实现类TV、WashMachine和AirConditioner,这些类能够提供自重。
有一个Truck类,包含了该货车上的所有家电,用一个集合(数组或集合类)表示。
Main函数中程序能够输出Truck类所装载货物的总重量。
Input
家电数量
家电种类编号 家电重量
注意:各个家电的编号为:TV:1 WashMachine:2 AirConditioner:3
Output
总重量
Sample Input
5
1 20
2 30
3 25
3 30
2 40
Sample Output
145
MyAnswer
import java.util.*;
public class Main {
public static void main(String[] args) {
Truck truck = new Truck();
truck.getScan();
System.out.println(truck.getSumWeight());
}
}
interface Appliance{
public int getWeight();
}
class App implements Appliance{
int weight;
public int getWeight(){
return 0;
}
}
class TV extends App implements Appliance{
TV(int w) {
weight=w;
}
@Override
public int getWeight() {
return weight;
}
}
class WashMachine extends App implements Appliance{
WashMachine(int w) {
weight=w;
}
@Override
public int getWeight() {
return weight;
}
}
class AirConditioner extends App implements Appliance{
AirConditioner(int w) {
weight=w;
}
@Override
public int getWeight() {
return weight;
}
}
class Truck{
int num;
App[] app;
int SumWeight;
public void getScan(){
Scanner scan = new Scanner(System.in);
num = scan.nextInt();
app = new App[num];
for(int i=0; i<num; i++){
int type = scan.nextInt();
int w = scan.nextInt();
if(type == 1)
app[i] = new TV(w);
else if(type == 2)
app[i] = new WashMachine(w);
else if(type == 3)
app[i] = new AirConditioner(w);
}
}
public int getSumWeight() {
for(int i=0; i<num; i++){
SumWeight += app[i].getWeight();
}
return SumWeight;
}
}
150 - 教师类
Description
设计一个教师类Teacher,要求:
属性有编号(int no)、姓名(String name)、年龄(int age)、所属学院(String seminary),为这些属性设置相应的get和set方法。
为Teacher类重写equals方法,要求:当两个教师对象的no相同时返回true。
重写Teacher类的toString方法,通过该方法可以返回“no: **, name:**, age: **, seminary: **”形式的字符串。
Input
两个教师对象的编号,姓名,年龄,学院
Output
教师的信息
两个教师是否相等
Sample Input
1 Linda 38 SoftwareEngineering
2 Mindy 27 ComputerScience
Sample Output
no: 1, name:Linda, age: 38, seminary: SoftwareEngineering
no: 2, name:Mindy, age: 27, seminary: ComputerScience
false
MyAnswer
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int n1 = scan.nextInt();
String na1 = scan.next();
int a1 = scan.nextInt();
String s1 = scan.next();
Teacher t1 = new Teacher(n1,na1,a1,s1);
int n2 = scan.nextInt();
String na2 = scan.next();
int a2 = scan.nextInt();
String s2 = scan.next();
Teacher t2 = new Teacher(n2,na2,a2,s2);
System.out.println(t1.toString());
System.out.println(t2.toString());
System.out.println(t1.equals(t2));
}
}
class Teacher{
int no;
String name;
int age;
String seminary;
Teacher(int no, String name, int age, String seminary){
setNo(no);
setName(name);
setSeminary(seminary);
setAge(age);
}
public void setNo(int no) {
this.no = no;
}
public void setName(String name) {
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public void setSeminary(String seminary) {
this.seminary = seminary;
}
public String getName() {
return name;
}
public int getNo() {
return no;
}
public int getAge() {
return age;
}
public String getSeminary() {
return seminary;
}
public boolean equals(Object o){
if(o == null)
return false;
else{
boolean res = false;