• Wir präsentieren Dir heute ein Stellenangebot für einen Java Entwickler - m/w/d in Augsburg, München, Stuttgart oder Bamberg. Hier geht es zur Jobanzeige

maximaler Wert eines Integers

J

jono

Top Contributor
Aufgabe:
Implementieren Sie eine Methode mit dem Namen "maxInteger", die den maximalen
Wert eines Integers ermittelt und zurückliefert.
Tipp: Sobald man den maximalen Wert um eins erhöht, wird das Ergebnis
negativ.

Musterlösung:
Java:
public static int maxInteger() {
        int x = 0;
        while (x >= 0) {
            x++;
        }
        return (x - 1);
    }
Ich verstehe die Aufgabe nicht wirklich. Der maximale Wert eines Integers, was soll mir das sagen? Außerdem wird die while-Schleife ja nie verlassen, das ist doch auch nicht sinnvoll...
 
Robert Zenz

Robert Zenz

Aktives Mitglied
Ein Integer ist etwas komplizierter als eine "einfache" Zahl. "int" wird dargestellt durch 4 Bytes, also 32 Bits. Damit kann man in etwa 4 Milliarden Zustaende abbilden. Das erste Bit wird als Vorzeichen verwendet, also halbiert sich die Anzahl der moeglichen Werte auf etwa 2 Milliarden. Wenn du jetzt den int konstant erhoehst, erreichst du irgendwann den Punkt an welchem du den maximalen 2 Milliarden Wert erreicht hast, erhoehst du ihn weiter, wird auch das erste Bit gesetzt, wodurch das Vorzeichen gedreht wird und der Wert ist "ploetzlich" negativ. Das nennt sich auch Integer Ueberlauf.

Den maximalen und minimalen Wert kannst du auch aus den Feldern "Integer.MAX_VALUE" und "Integer.MIN_VALUE" erfahren.
 
temi

temi

Top Contributor
Ich verstehe die Aufgabe nicht wirklich. Der maximale Wert eines Integers, was soll mir das sagen?
Vielleicht solltest du dich mal mit der binären Zahlendarstellung und dem Zweierkomplement beschäftigen. Dann verstehst du auch, warum das Ergebnis dann negativ wird. Warum sollte die Schleife nicht verlassen werden?
 
J

Joreyk

Aktives Mitglied
du kannst dich mal darüber informieren ab wann ein binär code negativ wird
ein integer hat 2 hoch 32 werte die zur verfügung stehen

die hälfte davon befindet sich im positiven bereich mit der 0
und der rest im negativen sooo wenn du jetzt weist ab wann binär code negativ wird wirst du herausfinden
dass sobald 2 hoch 31 + 1 erreicht wird wird das ganze negativ wegen der funktionsweise von binär zahlen dann ist dein x kleiner als 0 weil das bei -2 hoch 31 ist und dann wird das while verlassen du kannst das ganze mit kleineren zahlen ausprobieren zb shorts und dir es in der konsole ausgeben lassen integer ist blöd für dieses beispiel :D

es kann sein dass die 2 hoch X nicht exakt richtig sind ..geht auch nur ums beispiel
 
missy72

missy72

Aktives Mitglied
Hy,

Wenn der Maxwert erreicht ist, wird der Wert negativ , wurde ja schon erwähnt. Was ja kleiner ist als 0.
An dieser Stelle verlassen wir die Schleife.
Und da wir ja jetzt nicht den maximalen negativen Wert angeben wollen, ziehen wir wieder einen ab
und bekommen im Umgehrschluss den maximalen positiven Wert.

Ist ein bisschen banaler formuliert. :p
 
Zuletzt bearbeitet:
kneitzel

kneitzel

Top Contributor
Die if Anweisung mit dem return ist nicht notwendig @missy72 - die Musterlösung hat das auch schon korrekt gemacht.
 
missy72

missy72

Aktives Mitglied
Als ich die Korrektur begonnen hatte, gab es noch keine Kommentare darauf.
Wollte schnell meine unüberlegte Antwort berichtigen.
Aber verstehe, dass Ergebnis ist ja jetzt, wie von dir angesprochen.
(Gott sei Dank) ;)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Erste Schritte Maximaler Arrayeintrag Java Basics - Anfänger-Themen 11
S Zahl mit maximaler Anzahl von Teiler Java Basics - Anfänger-Themen 2
S Maximaler RAM Java Basics - Anfänger-Themen 14
M gibt es eine collection mit definierter maximaler größe Java Basics - Anfänger-Themen 4
S Aus verschachtelter ArrayList auf einen Wert zugreifen Java Basics - Anfänger-Themen 4
H Den Wert einer rekursiven Funktion bestimmen Java Basics - Anfänger-Themen 5
T Feststellen, dass Wert zu groß; Caesar Chiffre Java Basics - Anfänger-Themen 3
I Format Problem mit Wert - bekomme 0,10 anstatt 10,00 Java Basics - Anfänger-Themen 6
H Methode über String Wert aufrufen Java Basics - Anfänger-Themen 8
G Rekursive Methode liefert augenscheinlich keinen boolean-Wert zurück. Java Basics - Anfänger-Themen 4
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
NeoLexx Abfrage mit instanceof führt zu unerwarteten Wert Java Basics - Anfänger-Themen 9
B Map<String, FilterMeta, wie Wert bekommen? Java Basics - Anfänger-Themen 4
ms_cikar Den Wert einer Hex. value bestimmten. Java Basics - Anfänger-Themen 8
J Eine Position im String durch einen Integer - Wert teilen Java Basics - Anfänger-Themen 5
S Integer Wert wird nicht übernommen Java Basics - Anfänger-Themen 2
V Boolean Wert nicht richtig erkannt Java Basics - Anfänger-Themen 4
H Datentypen Was für eine Format verbirgt sich hinter dem Integer-Wert 053? Java Basics - Anfänger-Themen 2
1 Array nimmt falschen Wert auf! Java Basics - Anfänger-Themen 2
S Erste Schritte Button einen Wert zuweisen & diesen ausgeben Java Basics - Anfänger-Themen 2
H Größte Duplikat (Größte Doppelte Wert) eines Arrays ausgeben Java Basics - Anfänger-Themen 9
V_Fynn03 Erste Schritte Einen Wert in ein TextField einfügen aus einer anderen Klasse Java Basics - Anfänger-Themen 3
J Wert zwischen JFrames übergeben Java Basics - Anfänger-Themen 2
J Umwandlung String zu ASCII-Wert und anders Java Basics - Anfänger-Themen 17
P Verzweigungen Wert zurück geben Java Basics - Anfänger-Themen 2
D Wert des Arrays unter Bedingungen ändern Java Basics - Anfänger-Themen 1
M Double Wert nach n abschneiden ohne zu runden Java Basics - Anfänger-Themen 1
F Boolean Methode Wert ausgeben. Java Basics - Anfänger-Themen 2
X Erste Schritte boolean wert ändert sich nicht? Java Basics - Anfänger-Themen 6
T Klassen Den Wert aus Array lesen lassen Java Basics - Anfänger-Themen 12
W Problem mit dem Wert von boolean-Variable Java Basics - Anfänger-Themen 3
J Wie kann ich z.B. einem int-Wert einen String-Wert zuweisen? Java Basics - Anfänger-Themen 2
H Einfache Frage zur Punktnotation objektname.methode(wert) Java Basics - Anfänger-Themen 2
D integer negativen Wert abspeichern Java Basics - Anfänger-Themen 3
L Wert einer Webeseiteauslesen Java Basics - Anfänger-Themen 6
D Erste Schritte Wert im Array suchen Java Basics - Anfänger-Themen 12
O Primzahl rekursiv mit einem Wert ohne i, wie? Java Basics - Anfänger-Themen 6
S Wert innerhalb eines anderen Wertes Java Basics - Anfänger-Themen 3
S Array doppelter Wert prüfen Java Basics - Anfänger-Themen 7
O Wert in einer Schleife unterschiedlich erhöhen Java Basics - Anfänger-Themen 2
B ArrayList besitzt einen Wert zu wenig Java Basics - Anfänger-Themen 16
D Compiler-Fehler Wert auf Datenbank übertragen und Sleep Thread Java Basics - Anfänger-Themen 3
F Java int-Wert wird resetet Java Basics - Anfänger-Themen 21
J Erste Schritte Wert aus JTextField zurückgeben Java Basics - Anfänger-Themen 6
UnknownInnocent Bestimmten Integer Wert aus Array filtern Java Basics - Anfänger-Themen 2
B Liste von Integer -> Nächster Wert bekommen Java Basics - Anfänger-Themen 5
J Wert bei Objekterzeugung verändern Java Basics - Anfänger-Themen 12
I bestimmten Wert eines Arrays Java Basics - Anfänger-Themen 23
D Erste Schritte Java speichert wert des Scanners nicht Java Basics - Anfänger-Themen 2
B Erste Schritte if Anweisung mit Wert Übernahme Java Basics - Anfänger-Themen 3
B .txt. Datei auslesen und bestimmten Wert wiedergeben Java Basics - Anfänger-Themen 5
UnknownInnocent x wert eines Bildes auslesen Java Basics - Anfänger-Themen 1
S boolean Wert von mehreren int Möglichkeiten abfragen ? Java Basics - Anfänger-Themen 4
deatzi Wert aus anderer Klasse lesen Java Basics - Anfänger-Themen 7
D Compiler-Fehler Array an Methode übergeben und Wert zurückbekommen Java Basics - Anfänger-Themen 3
I Schleife fragt Wert ab bis 0 kommt (mit IO.java klasse) Java Basics - Anfänger-Themen 16
O String: Befehl und Wert erkennen. Java Basics - Anfänger-Themen 4
L Methoden Rekursion gibt alten Wert wieder Java Basics - Anfänger-Themen 37
S Wie erhöhe ich den Wert von mehren Integers auf einmal? Java Basics - Anfänger-Themen 5
J Wert eines Arrays einer Variable zuweisen, sobald der Wert eines anderen Arrays eintritt Java Basics - Anfänger-Themen 2
S Bestehendes Java Programm, einen festen Wert ändern Java Basics - Anfänger-Themen 17
E Aufruf auf Objekt mit übergebenem Wert? Java Basics - Anfänger-Themen 7
M Listener für Button - Wert von Variablen verändern Java Basics - Anfänger-Themen 14
F Variablen If else: Einer Variable einen Wert hinzufügen oder so? Java Basics - Anfänger-Themen 6
D Klassen Wert aus JTextfield in JLabel (andere Klasse) darstellen. Java Basics - Anfänger-Themen 60
E Wert in Textfeld schreiben Java Basics - Anfänger-Themen 1
D Einen Wert unter einen ActionListener weitergeben Java Basics - Anfänger-Themen 1
N wert für progress auf 100% setzen Java Basics - Anfänger-Themen 5
N Methoden vorherigen Wert in einem Array lieferen Java Basics - Anfänger-Themen 8
Joker4632 Klassen BigDecimal Multiplikation liefert nicht erwarteten Wert Java Basics - Anfänger-Themen 6
? Methoden Boolean Wert vergleichen und einlesen Java Basics - Anfänger-Themen 1
G Wert in Textdatei ersetzen? Java Basics - Anfänger-Themen 2
M Denn dichtesten Wert finden Java Basics - Anfänger-Themen 3
krgewb Collections Schlüssel-Wert-Wert-Paare Java Basics - Anfänger-Themen 2
D Summe berechnen mit verändertem Wert aus Schleife Java Basics - Anfänger-Themen 1
E Hash map Value Wert hochzuholen/ändern Java Basics - Anfänger-Themen 7
G Variablen Variable nimmt keinen Wert an (BlueJ) Java Basics - Anfänger-Themen 4
F In LinkedList einen Wert ersetzen oder neu einfügen Java Basics - Anfänger-Themen 7
J Fehler bei Vergleich auf den grössten Wert Java Basics - Anfänger-Themen 2
G Größten und kleinsten Wert im Array ermitteln? Java Basics - Anfänger-Themen 7
G Wie kann ich diesen Wert ermitteln? Java Basics - Anfänger-Themen 4
D Hilfe bei int wert von char Java Basics - Anfänger-Themen 7
P Erste Schritte Wert in Liste eintragen Java Basics - Anfänger-Themen 28
A Wieso charAt(0) + charAt(3) = INT-Wert? Java Basics - Anfänger-Themen 5
P JList, aus selectedValue bestimmten Wert aus Containerklasse auslesen Java Basics - Anfänger-Themen 4
E Wenn i (for-Loop) bestimmter Wert, dann neue Zeile eines Buttons Java Basics - Anfänger-Themen 7
E Methoden Methode liefert keinen Wert zurück Java Basics - Anfänger-Themen 16
T Combobox Wert auslesen und damit weiterrechnen Java Basics - Anfänger-Themen 6
H if-Abfrage, ungleich und falscher true Wert? Java Basics - Anfänger-Themen 11
G Wie kann ich einem StringBuilder einen int Wert formatiert hinzufügen? Java Basics - Anfänger-Themen 8
G Wie kann man den Erfolg einer Zuweisung als Boolean Wert verwenden? Java Basics - Anfänger-Themen 12
K Double Wert runden und in Int umwandeln Java Basics - Anfänger-Themen 7
F Wert in Linux auf die Konsole schreiben Java Basics - Anfänger-Themen 3
N Variablen int Wert einem String abgeben Java Basics - Anfänger-Themen 8
BuTTerBroTHDx Char Wert in int casten ? Java Basics - Anfänger-Themen 4
O Wert in einer URL hinzufügen (in meinem Beispiel Google) Java Basics - Anfänger-Themen 7
D Array wird immer mir 100 für jeden Wert initialisiert? Java Basics - Anfänger-Themen 2
J Wert einer Variable erhöhen Java Basics - Anfänger-Themen 5
A Variablen Variable soll ihren Wert nach Initialisierung nicht mehr ändern Java Basics - Anfänger-Themen 2
M Variable nimmt nicht den gewollten Wert an Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Anzeige

Neue Themen


Oben