Erste Schritte boolean: ist Zahl Hexadezimal - Lösung verwirrend

minipom

Mitglied
Hi Leute,

ich bin weiter fleißig am Lernen, die Aufgabe habe ich richtig, genau so steht sie in den Lösungen, aber ich habe ein Verständnisproblem, vielleicht kann mir jemand helfen.

Aufgabe:
amu56yo2.png


Meine Lösung:

Java:
public class Hexa {
 
public static boolean istHexZiffer (char zeichen)

{
if ((zeichen >= '0' && zeichen <='9') || 
		(zeichen >='a' && zeichen <='f') || 
		(zeichen >='A' && zeichen <='F'))  
		return true;
else
	return false;

}


	}

Das mit 0 und 9 ist ja verständlich, aber woher weiß Java das der Buchstabe a <f ist bzw. g nicht mehr gültig?
 

minipom

Mitglied
ok vielen ich meine es verstanden zu haben, kann mir aber jemand bestätigen ob diese Aufgabe hier richtig ist?

mj3mqjhr.png


Java:
public class PrepaidHandy {
	
public static int istGrossKleinBuchstabe(char buchstabe)
{		
	if (buchstabe >='a' && buchstabe <='z')
	return -1;
	
	if (buchstabe >='A' && buchstabe <='Z')
	return 1;
	
	else
	return 0;
	
}
	}

Dankeschön :toll:
 
T

tröööt

Gast
ähm ... klammern / blöcke ... sauber einrücken ... conventions ?

mal davon abgesehen das die aufgabe schon schrott ist würde ich als lehrer trotzdem FALSCH drunterschreiben ...

ich setz mal n bisschen was an was der aufgabenersteller unbedingt verbessern sollte

1) -1 wird in der regel als fehlercode zurückgegeben ... ergo müsste die methode bei allem anderen was nicht [a-zA-Z] ist -1 returnen ... es gibt zwar ein paar ausnahmen wie compareTo() die halt bestimmt ob etwas kleiner gleich oder größer ist dafür sinnigerweise -1 als "validen" return hat ... aber hier ist das absolut fehlplatziert ... dadurch eignet man sich nur schlechte gewohnheiten an die später in teamarbeit wo es gang und gebe ist -1 als ERROR zu returnen zu großen problemen führen können

2) wenn man die methode schon mit "ist" beginnt ... im englischen "is" wird normalerweise ein BOOL returned ... der halt angibt ob etwas zutrifft oder nicht ...
sinnvoller weise hätte man hier zwei methoden schachteln können : "istGrossbuchstabe()" und "istKleinbuchstabe()" ... ein "istGrossKleinBuchstabe()" ist völliger blödsinn ... und mit int als return einfach falsch

3) der hinweis das "ß" nicht übergeben wird ist ja mal voll an die wand gefahren ... "ß" ist laut duden grundsätzlich nur ein reiner kleinbuchstabe ... da gibt es keine große variante ... ergo : fester return ... if(c=='ß') return -1; ...

4) ich weis zwar nicht in welcher welt der autor dieser aufgabe lebt ... aber die deutschen umlaute mal eben der einfachheit unter den tisch fallen zu lassen ist schon grob fahrlässig ... denn anstatt euch beizubringen mit solchen "sonderfällen" klarzukommen wird es schlicht ignoriert ...

5) korrekte klammerung , blockbildung , einrückung
klar kann man if/else/for/while einfach so als einzeiler schreiben ... aber man sollte trotzdem klammern ...
und wenn man es schon als zweizeiler schreibt ... dann auch bitte korrekt einrücken ... ist zwar dem compiler egal .. erleichtert aber das lesen des codes ...
für fehlende klammern gäbs von mir ein falsch ... für die inkorrekte einrückung punkt-abzug ...

mal ganz davon abgesehen ist dein if-if-else logisch falsch ... denn das else bezieht sich nur auf das zweite if ... klar wird dies grundsätzlich geprüft wenn das erste false ist ... aber rein logisch falsch
korrekter weise so
Java:
if()
{
}
else
{
	if()
	{
	}
	else
	{
	}
}

6) ich weis zwar nicht ob ihr schon so weit seid ... aber wie wär es einfach mit ner exception ?
das hier wäre meine idee
Java:
public boolean isLowerLetter(char c)
{
	if(c>='a'&&c<='z')
	{
		return true;
	}
	if(c>='A'&&c<='Z')
	{
		return false;
	}
	throw new IllegalArgumentException("ONLY [a-zA-Z]");
}

und bevor jetzt hier wieder irgendwer anfängt mit heulen das ich es nicht auf den lehrer und/oder den schüler schieben soll ... aber bei solchen aufgaben und solchen lösungen die so auch noch im lösungsbuch stehen ... dann kann man sich nur an den kopf fassen und sich fragen : WHAT THE ...
 

VfL_Freak

Top Contributor
Moin,

ähm ... klammern / blöcke ... sauber einrücken ... conventions ?
mal davon abgesehen das die aufgabe schon schrott ist würde ich als lehrer trotzdem FALSCH drunterschreiben ...
ich setz mal n bisschen was an was der aufgabenersteller unbedingt verbessern sollte
.......
Darf ich mal fragen, wieso Du Dir hier anmaßt, hier ständig alles und jeden zu kritisieren ???:L :noe:

Von Deinem Standpunkt aus mag die Aufgabe vielleicht Schrott sein, aber ich denke nicht, dass Du es wirklich beurteilen kannst.
Das kann doch durchaus im Rahmen eines Unterrichts Sinn machen ... sind halt Grundlagen !

Wie wäre es denn übrigens, wenn Du Dich hier mal offiziell anmeldest?
Oder fehlt Dir dazu der Mut?

Gruß
Klaus
 

X5-599

Top Contributor
@tröööt
So jetzt mal ehrlich: Ich mich noch nie so heftig ge-facepalm't wie gerade eben nachdem ich deinen "Beitrag" gelesen habe.

Alles was du schreibst ist hier total nebensächlich. Es geht hier um eine Schulaufgabe die mit Sicherheit zu einer Zeit gestellt wurde in der noch die Grundlagen und Mechanics von Java vermitelt werden.
In diesem Fall die Bedeutung von char. Das es auch nur ein primitiver Datentyp ist wie int und byte und man ihn auch genauso vergleichen (<=>) kann.
Durch die erste Aufgabe wird gezeigt, dass man so Bereiche in der ASCII Tabelle definieren kann und wie man eine entsprechende Rückgabe produziert.
Durch die zweite Aufgabe wird das nochmal gefestigt (selbe Vorgehensweise) aber es gibt eine andere Definition für Rückgabewerte.

Genau weil oben genanntes Vermittelt werden soll werden auch solche Exoten wie ß und andere Sonderlinge aus der Aufgabenstellung genommen! Wenn dir das nicht logisch erscheint kann ich dir auch nicht helfen.

Auch:
Bei solchen Aufgaben spielt die Definition "-1 ist als Fehlercode zurückzugeben" sowas von keine Rolle! Genauso deine ständigen Bemerkungen á la: "Einzeiler sind schlechter Stil". Das ist DEINE Meinung. Nur weil es dir gefällt alles in {} zu setzten müssen das noch lange nicht alle tun. Und es ist definitiv KEIN KONVENTIONSBRUCH! Wenn ich dann noch höre (lese) "Gibt bei mir Punkabzug/Wäre bei mir ein FALSCH" krieg' ich das kalte!

@VFL Freak
Ich schätze letzeres. Dann könnte er ja gesperrt werden...
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Thomas06 Wie kann man mithilfe von boolean herausfinden ob eine zahl durch 5 und 7 teilbart ist ? Java Basics - Anfänger-Themen 7
M ziffer in zahl erkennen mit boolean Java Basics - Anfänger-Themen 12
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
Zentriks Hilfe zu Sieb des Eratosthenes ohne boolean Java Basics - Anfänger-Themen 5
C Java boolean Code läuft nicht Java Basics - Anfänger-Themen 5
xaerez Threads Boolean Wert verändert sich nicht Java Basics - Anfänger-Themen 5
xaerez Threads Boolean Wert verändert sich nicht Java Basics - Anfänger-Themen 4
V Hilfe bei Implementierung einer boolean Methode Java Basics - Anfänger-Themen 6
B Rückgabewert boolean Java Basics - Anfänger-Themen 8
J Compiler-Fehler Harshadzahlen mit Boolean Java Basics - Anfänger-Themen 4
J boolean aufgabe Java Basics - Anfänger-Themen 9
A Boolean Java Basics - Anfänger-Themen 5
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
J Boolean[] teilen Java Basics - Anfänger-Themen 13
S public static boolean Java Basics - Anfänger-Themen 4
R Boolean Methode Rückgabewert if() Java Basics - Anfänger-Themen 1
G Rekursive Methode liefert augenscheinlich keinen boolean-Wert zurück. Java Basics - Anfänger-Themen 4
kazzam94 Methode soll Array von Boolean zurückgeben Java Basics - Anfänger-Themen 5
L Überschriebene Boolean Statements Java Basics - Anfänger-Themen 2
L boolean-Abfrage enumeration Java Basics - Anfänger-Themen 3
A Ausgabe mit boolean Java Basics - Anfänger-Themen 3
R Boolean value ohne Kontrollstrukturen ändern Java Basics - Anfänger-Themen 5
F boolean stellt sich auf true Java Basics - Anfänger-Themen 15
V Boolean Wert nicht richtig erkannt Java Basics - Anfänger-Themen 4
Kirby.exe ArrayOutOfBoundsException bei boolean Array Java Basics - Anfänger-Themen 19
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
I converting boolean Array to String Array Java Basics - Anfänger-Themen 10
C Java Boolean reagiert nicht Java Basics - Anfänger-Themen 18
A Alle true Werte eines boolean Arrays herausfiltern Java Basics - Anfänger-Themen 19
G Ratlosigkeit zur Aufgabe im Anhang (boolean, equals.) Java Basics - Anfänger-Themen 20
F Boolean Methode Wert ausgeben. Java Basics - Anfänger-Themen 2
K Boolean in einer Methode um 2 Objekte zu vergleichen Java Basics - Anfänger-Themen 12
K Boolean in einer erstellten Klasse verwenden Java Basics - Anfänger-Themen 14
X Erste Schritte boolean wert ändert sich nicht? Java Basics - Anfänger-Themen 6
W Problem mit dem Wert von boolean-Variable Java Basics - Anfänger-Themen 3
P Array Sortieren mit boolean? Java Basics - Anfänger-Themen 33
A Boolean in String Java Basics - Anfänger-Themen 2
S Operatoren Boolean Vergleichsoperator Java Basics - Anfänger-Themen 7
Queiser Super boolean Java Basics - Anfänger-Themen 11
E ISBN Nummer mit boolean Java Basics - Anfänger-Themen 5
W In Methode boolean array zurückgeben Java Basics - Anfänger-Themen 3
B Math.random mit Boolean array? Java Basics - Anfänger-Themen 17
Z Boolean Abfrage in einer for each Schleife Java Basics - Anfänger-Themen 2
T Methoden Boolean wird nicht gesetzt Java Basics - Anfänger-Themen 1
H boolean Array Problem Java Basics - Anfänger-Themen 7
S boolean Wert von mehreren int Möglichkeiten abfragen ? Java Basics - Anfänger-Themen 4
J Problem mit Boolean bei Funktion! Java Basics - Anfänger-Themen 5
O boolean Array Frage! Java Basics - Anfänger-Themen 4
? Methoden Boolean Wert vergleichen und einlesen Java Basics - Anfänger-Themen 1
M Erste Schritte while boolean=false läuft nur bei true??? Java Basics - Anfänger-Themen 23
D Boolean Array initialisieren Java Basics - Anfänger-Themen 4
M Datentypen Byte, Float und Boolean Java Basics - Anfänger-Themen 13
A Problem beim Deklarieren von einem BOOLEAN Java Basics - Anfänger-Themen 4
W Interpreter-Fehler boolean nur eins darf wahr sein Java Basics - Anfänger-Themen 11
G Wie kann man den Erfolg einer Zuweisung als Boolean Wert verwenden? Java Basics - Anfänger-Themen 12
K Problem mit Methode(Array,Boolean,ForSchleife) Java Basics - Anfänger-Themen 6
V Methode erstellen für ein Boolean Array Java Basics - Anfänger-Themen 13
T Boolean by Reference Java Basics - Anfänger-Themen 6
L Wertebereich von boolean Java Basics - Anfänger-Themen 4
D Erklärung static boolean Java Basics - Anfänger-Themen 6
T Eine String Matrix erstellen die eine boolean Funtion verwendet Java Basics - Anfänger-Themen 10
J Datentypen Boolean Refferenz Objekt Java Basics - Anfänger-Themen 2
A boolean Methode ohne If und else Java Basics - Anfänger-Themen 1
fLooojava Laufender Thread | Boolean ändern Java Basics - Anfänger-Themen 9
T Boolean Missing return Statement?! Java Basics - Anfänger-Themen 2
A Boolean aus dem ActionlListener Java Basics - Anfänger-Themen 1
T hashCode mit boolean Java Basics - Anfänger-Themen 1
T boolean, was passiert hier? Java Basics - Anfänger-Themen 4
M Sind solche boolean Anweisen empfehlenswert? Java Basics - Anfänger-Themen 3
N Boolean Werte - immer "false" Java Basics - Anfänger-Themen 5
J GUI per Boolean steuern Java Basics - Anfänger-Themen 3
F Effizientes Lesen von 65 Datein mit Boolean Werten Java Basics - Anfänger-Themen 6
K Viergewinnt - boolean Problem Java Basics - Anfänger-Themen 2
S Best Practice Boolean mit IF verbinden Java Basics - Anfänger-Themen 7
D Boolean mit String Java Basics - Anfänger-Themen 2
K Methode ohne Rückgabewert in boolean Methode ändern Java Basics - Anfänger-Themen 6
E 2 dimensionales Boolean Array Java Basics - Anfänger-Themen 5
B assertArrayEquals nicht für boolean[]? Java Basics - Anfänger-Themen 2
M !boolean das selbe wie boolean == false? Java Basics - Anfänger-Themen 3
L Boolean Methode wirft Fehler aus Java Basics - Anfänger-Themen 12
F Datentypen Frage nach Boolean Java Basics - Anfänger-Themen 11
C Sieb des Eratosthenes ohne boolean Java Basics - Anfänger-Themen 20
B Boolean abfrage Java Basics - Anfänger-Themen 3
L The operator && is undefined for the argument type(s) String, boolean Java Basics - Anfänger-Themen 8
L Methoden Boolean-Methode Java Basics - Anfänger-Themen 16
S Setter Methode von Boolean Java Basics - Anfänger-Themen 11
W Datentypen Zweidimensionales Boolean Array Java Basics - Anfänger-Themen 13
P Compiler-Fehler Boolean: Missing Return Statement Java Basics - Anfänger-Themen 4
M int & boolean Java Basics - Anfänger-Themen 12
feardorcha boolean array false - true - Abfrage Java Basics - Anfänger-Themen 10
R boolean, if-else Java Basics - Anfänger-Themen 7
J Variablen Boolean true "übersetzen" in String Java Basics - Anfänger-Themen 10
M Meldung "cannot convert flom boolean to boolean[]" Java Basics - Anfänger-Themen 3
S Name eines boolean ausgeben (nicht den Wert) Java Basics - Anfänger-Themen 43
S Variablen Prüfen, ob einer von vielen boolean true ist Java Basics - Anfänger-Themen 8
D boolean te wird nicht verwendet Java Basics - Anfänger-Themen 2
M Bedingte Anweisung mit Boolean Java Basics - Anfänger-Themen 2
C cannot convert from int to boolean Java Basics - Anfänger-Themen 3
T Variablen boolean-wert wird nicht gesetzt Java Basics - Anfänger-Themen 6
A In Methode boolean ändern Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben