53 lines
981 B
Java
53 lines
981 B
Java
package diesunddas;
|
|
|
|
public class Strecke{
|
|
|
|
enum Einheit{
|
|
m(1),
|
|
km(1e3),
|
|
cm(0.01),
|
|
mm(0.001);
|
|
|
|
private double faktor;
|
|
|
|
Einheit(){}
|
|
Einheit(double faktor){ this.faktor = faktor; }
|
|
|
|
double faktor(){ return faktor; }
|
|
}
|
|
|
|
double länge;
|
|
Einheit einheit = Einheit.m;
|
|
|
|
public Strecke(double länge){
|
|
this.länge = länge;
|
|
}
|
|
|
|
public Strecke(double länge, Einheit einheit){
|
|
this.länge = länge;
|
|
this.einheit = einheit;
|
|
}
|
|
|
|
public Strecke plus(Strecke dazu){
|
|
return new Strecke(länge+dazu.länge*dazu.einheit.faktor()/einheit.faktor(), einheit);
|
|
}
|
|
|
|
@Override
|
|
public String toString(){
|
|
return länge+" "+einheit;
|
|
}
|
|
|
|
/**
|
|
* @param args
|
|
*/
|
|
public static void main(String[] args) {
|
|
Strecke heimweg = new Strecke(10, Einheit.km);
|
|
Strecke bäcker = new Strecke(420, Einheit.m);
|
|
System.out.println(heimweg);
|
|
System.out.println(bäcker);
|
|
System.out.println(heimweg.plus(bäcker));
|
|
System.out.println(bäcker.plus(heimweg));
|
|
}
|
|
|
|
}
|