Null und 0

rokko123

Mitglied
Hey,

ich hab grad n kleines Problem mit null und 0

Wenn ich jetzt eine Liste habe und die Liste z.B. nach und nach leere, bis die size bei 0 ankommt, und dann überprüfen möchte ob sie leer ist, spielt es dann eine Rolle ob ich das mit

list.size == 0
oder list == null

mache?

Zeigt eine Liste, die keine Elemente mehr enthält automatisch auf Null, so dass es keinen Unterschied macht, wie man sie auf empty überprüft?

Ich hab bei google gesucht, allerdings bin ich für JAVA nicht fündig geworden, bzw nicht so, dass ich jetzt sicher wäre in dem Fall :autsch:

Ich mein theoretisch müsste die doch auf null zeigen, wenn sie keine Elemente mehr hat, sie hat ja sonst nixmehr worauf gezeigt werden könnte... :autsch:
aber ist das richtig?
 
Zuletzt bearbeitet:

eRaaaa

Top Contributor
list.next wäre theoretisch dann null, das wäre korrekt nach deiner Logik, aber die Liste list an sich natürlich nicht, sonst könntest du sie ja nicht mehr füllen. Also spielt es schon eine Rolle!
 

rokko123

Mitglied
joa aber die wirt ja auch mit list == null initialisiert, dann besitzt sie ja auch noch keine Elemente
Hät wahrscheinlich noch erwähnen sollen, dass es ein Stack ist, quasi als Liste

Aber dann hat ich wohl einfach Glück dass jUnit-Test erfolgreich war lol -.-
 
Zuletzt bearbeitet:

Final_Striker

Top Contributor
joa aber die wirt ja auch mit list == null initialisiert, dann besitzt sie ja auch noch keine Elemente

Nicht die Liste wird mit
Code:
null
initialisiert sondern die Referenz auf die Liste. Zu diesem Zeitpunkt existiert diese noch gar nicht. Die Liste wird erst erstellt, wenn du
Code:
new...
schreibst.
 

Templarthelast

Bekanntes Mitglied
Null und 0 sind die Wahl und Wallnuss, ähnlich und doch Grundverschieden.


Null ist ein Zustand in dem ein Objekt nicht angelegt wurde.

0 dagegen ist ein Zahlenwert.

Deshalb muss man zwischen diesen unterscheiden.
 

pl4gu33

Top Contributor
wenn du versuchst in eine Liste

List list= null;

ein Element zu adden, bekommst du eine NullPointerException, da sozusagen noch gar keine List existiert.
 

rokko123

Mitglied
joa, naja funktioniert trotzdem, in der dok steht auch, dass die leere Liste durch null repräsentiert wird und macht in meinem Fall keinen Unterschied, ob ich auf size überprüfe oder auf null, weil auch size dann überprüft obs == null is...

aber das is dann wohl ne Ausnahme, dass das so funktioniert und nicht die Regel, wahrscheinlich weil der erste Wert halt wie bei einem Stack vorne, an erster Stelle angefügt wird und bei der pop() methode dann solange Elemente entfernt werden, bis list = list.next wieder list = null ergibt und dann wieder leer is in meinem Fall

Danke
 

rokko123

Mitglied
Java:
public class List {
	public int value;
	public List next;

public List(int value, List next) 
	{
		this.value = value;
		this.next = next;
	}	
}


public boolean empty()
	{
		return list == null;
			
	}

public static int size(List list)
	{
		return list == null ? 0 : 1 + size(list.next);  // <<
		
	}
 
Zuletzt bearbeitet:

JavaProfi

Aktives Mitglied
Ups !! Das ist aber unschön!
Ich vermute, du möchtest nicht eine JAVA-Standardimplementierung einer Liste nutzen, sondern du möchtest selbst eine Liste programmieren. Das mussten wir seinerzeit im Informatikstudium auch mal machen.

Deine Klasse solltest du aber nicht "List" benennen, da dieser Bezeichner bereits vom Interface List benutzt wird.
Das was du da versuchst zu implementieren ist eher ein Listenelement, also sowas wie "ListElem" oder einfach nur "Elem". Versuche Klassen so zu benennen, dass die sie auch das repräsentieren, was sie sein sollen.

Die Methoden solltest du nach Möglichkeit auch so benennen, dass klar ist, was sie machen. In der Regel also Verben oder Verb-Substantiv-Kombinationen.

Die Methode empty() könnte besser isEmpty() benannt werden.

Werte setzen --> Methodenbezeichner beginnt mit set......
Wert lesen --> Methodenbezeichner beginnt mir get.....
Status lesen (boolean wird zurückgegeben) --> Methodenbezeichner beginnt mit is... oder has...

Objekt anfügen --> Methodenbezeichner beginnt mit add...
Objekt entfernen --> Methodenbezeichner beginnt mit remove...

Ist nur ein Vorschlag.

Gruß
JP
 

rokko123

Mitglied
Joa danke für den Vorschlag, aber Bezeichnungen sind alle vorgegeben, auch List :)
Habs auch nur gepostet, weil er fragte wie ich size gemacht hab, hab also kein Problem zur Zeit oder so, aber danke für den Hinweis, werd versuchen auf sowas zu achten wenns mal nich vorgegeben is :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Ich brauche eine Schleife die eine beliebige Zahl so lange durch 10 teilt bis zur Null Java Basics - Anfänger-Themen 5
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
J 2 listen vergleichen, die auch null Elemente haben können ! Java Basics - Anfänger-Themen 9
W Null-Pointer trotz Konstruktor? Java Basics - Anfänger-Themen 9
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
I Grundsatzfrage: Belegt eine Referenz auf 'null' RAM, und wenn ja - wieviel ;-) ? Java Basics - Anfänger-Themen 5
H Ein übergegebenes Objekt auf null setzen Java Basics - Anfänger-Themen 9
P Buffer und null Java Basics - Anfänger-Themen 3
"java.util.HashMap.get(Object)" is null Java Basics - Anfänger-Themen 10
jakobfritzz Array- cannot invoke "" because "" is null Java Basics - Anfänger-Themen 4
W Wie ziehe ich von einer bestimmten Zahl, Zahlen ab, bis mein Ergebnis null beträgt? Java Basics - Anfänger-Themen 10
N null in String replacen Java Basics - Anfänger-Themen 16
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
K Bufread.readLine())!= null wie beenden? Java Basics - Anfänger-Themen 4
C Variablen Provided text for message may not be null Java Basics - Anfänger-Themen 9
T ComboBox getValue() zeigt null Java Basics - Anfänger-Themen 7
J null exception Array Java Basics - Anfänger-Themen 5
tobikoch String x= null Bedeutung Java Basics - Anfänger-Themen 9
C NumberFormatException: null ohne Ausnahmebehandlung stoppen Java Basics - Anfänger-Themen 7
J Int wird als Null ausgegeben Java Basics - Anfänger-Themen 8
M Prüfen auf null ohne NPE Java Basics - Anfänger-Themen 1
C Array-Eintrag wieder auf Null setzen Java Basics - Anfänger-Themen 3
C Array auf Null-Inhalte prüfen Java Basics - Anfänger-Themen 9
V NullPointerException, wenn Key und Value null sind Java Basics - Anfänger-Themen 2
M jTable bekommt null Java Basics - Anfänger-Themen 1
B MySQL (jdbc) -> connection liefert NULL Java Basics - Anfänger-Themen 3
der_Schokomuffin Hilfe gesucht: String wird auf null gesetzt! Java Basics - Anfänger-Themen 17
L Warum ist Variable null? Java Basics - Anfänger-Themen 3
J javax.servlet.ServletException: Name is null Java Basics - Anfänger-Themen 7
B if(object== null) abkürzen? Java Basics - Anfänger-Themen 6
O JavaArray Null Java Basics - Anfänger-Themen 3
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
W NullPointerException obwohl nicht null? Java Basics - Anfänger-Themen 3
D Best Practice Konvention - Klassenmembers auf null setzen? Java Basics - Anfänger-Themen 2
I Null-Überprüfung durch Lambda-Expressions abkürzen Java Basics - Anfänger-Themen 8
Orkanson Null Pointer Expception Java Basics - Anfänger-Themen 3
M set Integer bzw. set null mit SQL DB Java Basics - Anfänger-Themen 9
I Polymorphie Null Objekt Java Basics - Anfänger-Themen 3
O Datentypen Integer mit führender Null Java Basics - Anfänger-Themen 13
DaCrazyJavaExpert Compiler-Fehler Variable nicht mit null initialisiert, trotzdem: NullPointerException Java Basics - Anfänger-Themen 28
J Einfache Frage zu "null" Java Basics - Anfänger-Themen 2
T Datei in Array einlesen "null" Java Basics - Anfänger-Themen 8
P Operatoren Parameter nicht auf null geprüft? Java Basics - Anfänger-Themen 16
K Operatoren 2D Int Array auf Null-Referenzen prüfen Java Basics - Anfänger-Themen 18
C Null Pointer Exception Java Basics - Anfänger-Themen 10
V Elemente aus einem Array mit null überschreiben Java Basics - Anfänger-Themen 4
V String Array gegen null-Eintrag sichern Java Basics - Anfänger-Themen 11
G Null Pointer Exception Java Basics - Anfänger-Themen 4
R Gleitkommazahlen ohne führende Null Java Basics - Anfänger-Themen 10
M array = null Java Basics - Anfänger-Themen 2
F String equals NULL Problem Java Basics - Anfänger-Themen 4
F JSON null macht mir ein Problem Java Basics - Anfänger-Themen 3
R Property Value als null setzen Java Basics - Anfänger-Themen 1
D Arrays.toString spuckt null aus? Java Basics - Anfänger-Themen 3
T Compiler-Fehler Null type safety (type annotations) Java Basics - Anfänger-Themen 5
F Erste Schritte Unterschied: Array "leer" / "null" Java Basics - Anfänger-Themen 3
J Fehlerhafte Ausgabe "null" Java Basics - Anfänger-Themen 2
G Threads zum Thema Threads??? null Ahnung Java Basics - Anfänger-Themen 4
W Input/Output DataOutputStream gibt NULL zurück Java Basics - Anfänger-Themen 5
J Einfach verkettet List: Ausgabe ohne null Java Basics - Anfänger-Themen 11
D OOP Warum bekomme ich eine Null-Pointer Exception!!? :( Java Basics - Anfänger-Themen 4
D Null Ausgabe obwohl wert zugewiesen Java Basics - Anfänger-Themen 5
J Alias null Java Basics - Anfänger-Themen 4
B Aliasing bei null-Objekten Java Basics - Anfänger-Themen 3
A null-Überprüfung Java Basics - Anfänger-Themen 24
O Methode gibt Null zurück Java Basics - Anfänger-Themen 7
D Methoden Implementieren von einer Zoomfunktion innerhalb eines JPanels mit null-Layoutmanager Java Basics - Anfänger-Themen 1
A Null Pointer Exception in Liste Java Basics - Anfänger-Themen 11
T Null Java Basics - Anfänger-Themen 3
X Array trotz Befüllung "null" Java Basics - Anfänger-Themen 11
P JavaFX Textfelder geben immer null zurück Java Basics - Anfänger-Themen 8
K Selbst renderndes Object auf null setzen Java Basics - Anfänger-Themen 1
L Null Pointer Exception bei setText Java Basics - Anfänger-Themen 9
D Methode die statt char[] ein "null" zurück gibt Java Basics - Anfänger-Themen 8
J .txt Datei "einlesen "und in String speichern ergibt immer NULL Java Basics - Anfänger-Themen 17
M Input/Output File.listFiles() gibt null zurück Java Basics - Anfänger-Themen 3
M Kann einen Array nicht füllen, im Nachhinein nur "null"-Werte Java Basics - Anfänger-Themen 11
J Verschränkte Rekursion und null Ahnung... Java Basics - Anfänger-Themen 0
X Vererbung Setzen auf Null bei Subklassen Java Basics - Anfänger-Themen 2
S Rückgabewert null in Methode mit Thread Java Basics - Anfänger-Themen 2
C MIME-Type null Java Basics - Anfänger-Themen 4
T Null Pointer Exception Java Basics - Anfänger-Themen 4
M toString gibt "null" statt "0.0" aus Java Basics - Anfänger-Themen 5
M Konstruktor auf null prüfen, Arrays Java Basics - Anfänger-Themen 9
G Null Pointer Exeption Java Basics - Anfänger-Themen 8
A If object != null funktioniert nicht Java Basics - Anfänger-Themen 2
N 'null' aus String löschen Java Basics - Anfänger-Themen 7
F Irgendein "Null" Fehler.... Java Basics - Anfänger-Themen 5
P Map liefert bei put null als Ergebnis Java Basics - Anfänger-Themen 6
M Interface Das Null-Layout Java Basics - Anfänger-Themen 12
M Problem mit null pinterexception beim laden von Bildern Java Basics - Anfänger-Themen 20
Dogge NumberFormatException null Java Basics - Anfänger-Themen 5
C 2 Objekte, 1 immer Null? Java Basics - Anfänger-Themen 8
H Mehrdimensionales Array - Inhalt auf Null überprüfen Java Basics - Anfänger-Themen 5
J db4o-attrbibutauslesen null Java Basics - Anfänger-Themen 9
MiMa Null Inhalte in Variablen Java Basics - Anfänger-Themen 28
B Variable wird einfach so wieder auf "null" gesetzt Java Basics - Anfänger-Themen 12
X Interpreter-Fehler Null? Java Basics - Anfänger-Themen 16
H Methoden null-Argument bei varargs Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben