Ich muss eine Klasse namens Temperatur schreiben und mein einziges Problem ist, wenn ich versuche, die Konvertierungsmethode aufzurufen. Wenn ich das Hauptprogramm ausführe, ist die Umwandlungsausgabe 0.0Temperaturkonvertierungsmethode Ausgabe von Java
Hat es etwas mit der Verwendung einer privaten Variablen zu tun?
Der Code ist unten.
Vielen Dank!
public class Temperature {
private double temp;
private String scale;
public Temperature(double temp) {
this.temp = temp;
}
public String toString() {
return "your temp is " + this.temp;
}
public double getTemp() {
return this.temp;
}
public String getScale(String scale) {
this.scale = scale;
return this.scale;
}
public double conversion() {
double temp = 0;
if (this.scale == "fahrenheit") {
temp = (this.temp - 32) * (double)(5/9);
}
else if (this.scale == "celsius") {
temp = (this.temp * (double)(9/5)) + 32;
}
return temp;
}
public boolean aboveBoiling(double temp) {
if (this.scale == "fahrenheit") {
return temp >= 212;
}
else if (this.scale == "celsius") {
return temp >= 100;
}
return true;
}
}
unter meinem Testfahrer ist Funktion zu testen, ruft
import java.util.*;
public class testdriver {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Temperature userTemp;
String userScale;
//userTemp = new Temperature(1.0);
System.out.print("Please enter your temp scale(fahrenheit or celius): ");
userScale = sc.next();
System.out.println();
System.out.print("Please enter your temp in " + userScale + ": ");
userTemp = new Temperature(sc.nextDouble());
System.out.println();
System.out.println(userTemp.toString());
System.out.println();
System.out.println("your temp is: " + userTemp.getTemp());
System.out.println();
System.out.println("your scale is: " + userTemp.getScale(userScale));
System.out.println();
System.out.println(userTemp.conversion());
System.out.println();
double userTemp2 = userTemp.conversion();
System.out.println(userTemp.aboveBoiling(userTemp2));
}
}
zustimmen, und besser wird enum sein –
Einverstanden. Bitte sehen Sie http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java. – rajah9
ich bekomme immer noch eine Ausgabe von 0.0:/ – Roach