Hallo,
ich habe eine Übung die ToolBox heißt. Dabei ist eine passive Klasse zu schreiben, die mit Hilfe eine ausführbaren, bestimmte Werte auf Ihre Richtigkeit prüft. Mein Problem ist, dass in der Methode signum ein int Wert zurückgeliefert werden soll, über den Aktualparameter jedoch ein ein double wert geliefert wird. Natürlich bringt mir der Compiler anschließend die Fehlermeldung ...
Toolbox.java:56: missing return statement
}//end signum
^
So weit so gut, ich weiß nur nicht wie ich es hinbekomme, dass er mir die Werte 0, 1 und -1 zurückliefert. Natürlich könnte ich diese Werte auch über die System.out.println ausgeben, dass würde aber nicht der Aufgabenstellung meines Professors entsprechen und fällt somit auch als Lösung aus.
Ich wäre euch für eine kurze Antwort sehr dankbar. Anbei meine Quellcodes.
public class ToolBox
{
final double i = -10e-6;
final double j = 10e-6;
public boolean istNull(double dwert)
{
if ((dwert>=i)&&(dwert<=j))
{
return true;
}//end if
else
{
return false;
}//end else
}//end istNull
public boolean istGueltig(int iwert)
{
if ((iwert>9)&&(iwert<100)&&(iwert%4==0))
{
return true;
}//end if
else
{
return false;
}
}//end istGueltig
public int signum(double dwert)
{
if (dwert>0.0)
{
System.out.println("
}
if(dwert==0.0)
{
return 0;
}
if(dwert<0.0)
{
return -1;
}
}//end signum
public boolean istHexZiffer(char cwert)
{
if((cwert>='0')&&(cwert<='9'))
{
return true;
}
else if((cwert>= 'a')&&(cwert<='f'))
{
return true;
}
if((cwert>='A')&&(cwert<='F'))
{
return true;
}
else
{
return false;
}
}//end istHexZiffer
}//end class
//////////////////////////////////////////////////////////////////////////////////////////////////
public class ToolBoxTest
{
public static void main (String [] args)
{
int iwert =88;
double dwert =0.000002;
ToolBox tool_ref = new ToolBox();
if (tool_ref.istNull(dwert))
System.out.println("Wer:" + dwert + "ist innerhalb der Toleranz");
else
System.out.println("Wer:" + dwert + "ist außerhalb der Toleranz");
if (tool_ref.istGueltig(iwert))
System.out.println(iwert + "ist ein gueltiger Wert!");
else
System.out.println(iwert + "ist ein ungueltiger Wert!");
System.out.println(tool_ref.istHexZiffer('F'));
System.out.println(tool_ref.istHexZiffer('g'));
System.out.println(tool_ref.istHexZiffer('H'));
System.out.println(tool_ref.istHexZiffer('5'));
}//end main
}//end ToolBoxTest
ich habe eine Übung die ToolBox heißt. Dabei ist eine passive Klasse zu schreiben, die mit Hilfe eine ausführbaren, bestimmte Werte auf Ihre Richtigkeit prüft. Mein Problem ist, dass in der Methode signum ein int Wert zurückgeliefert werden soll, über den Aktualparameter jedoch ein ein double wert geliefert wird. Natürlich bringt mir der Compiler anschließend die Fehlermeldung ...
Toolbox.java:56: missing return statement
}//end signum
^
So weit so gut, ich weiß nur nicht wie ich es hinbekomme, dass er mir die Werte 0, 1 und -1 zurückliefert. Natürlich könnte ich diese Werte auch über die System.out.println ausgeben, dass würde aber nicht der Aufgabenstellung meines Professors entsprechen und fällt somit auch als Lösung aus.
Ich wäre euch für eine kurze Antwort sehr dankbar. Anbei meine Quellcodes.
public class ToolBox
{
final double i = -10e-6;
final double j = 10e-6;
public boolean istNull(double dwert)
{
if ((dwert>=i)&&(dwert<=j))
{
return true;
}//end if
else
{
return false;
}//end else
}//end istNull
public boolean istGueltig(int iwert)
{
if ((iwert>9)&&(iwert<100)&&(iwert%4==0))
{
return true;
}//end if
else
{
return false;
}
}//end istGueltig
public int signum(double dwert)
{
if (dwert>0.0)
{
System.out.println("
}
if(dwert==0.0)
{
return 0;
}
if(dwert<0.0)
{
return -1;
}
}//end signum
public boolean istHexZiffer(char cwert)
{
if((cwert>='0')&&(cwert<='9'))
{
return true;
}
else if((cwert>= 'a')&&(cwert<='f'))
{
return true;
}
if((cwert>='A')&&(cwert<='F'))
{
return true;
}
else
{
return false;
}
}//end istHexZiffer
}//end class
//////////////////////////////////////////////////////////////////////////////////////////////////
public class ToolBoxTest
{
public static void main (String [] args)
{
int iwert =88;
double dwert =0.000002;
ToolBox tool_ref = new ToolBox();
if (tool_ref.istNull(dwert))
System.out.println("Wer:" + dwert + "ist innerhalb der Toleranz");
else
System.out.println("Wer:" + dwert + "ist außerhalb der Toleranz");
if (tool_ref.istGueltig(iwert))
System.out.println(iwert + "ist ein gueltiger Wert!");
else
System.out.println(iwert + "ist ein ungueltiger Wert!");
System.out.println(tool_ref.istHexZiffer('F'));
System.out.println(tool_ref.istHexZiffer('g'));
System.out.println(tool_ref.istHexZiffer('H'));
System.out.println(tool_ref.istHexZiffer('5'));
}//end main
}//end ToolBoxTest