Hét vraag- en antwoordplatform van Nederland

Wat doe ik fout in mijn code?

Ik ben begonnen aan een eigen os in Java 1.8 maar telkens geeft hij een fout als ik vraag in te loggen of te registreren. Ik gebruik: if (loginMethod.toUpperCase() == "L"). Maar als ik dit doe registreert het systeem de "L" niet als een "L" of een "R", zou iemand naar mijn code willen kijken en zeggen hoe het wel moet?

Je vindt de code op:

Toegevoegd na 1 minuut:
Je vindt de code op: https://www.mediafire.com/file/svkab64xu7lb56y/source.java

Verwijderde gebruiker
7 jaar geleden
Geef jouw antwoord
0 / 2500
Geef Antwoord

Antwoorden (1)

Er is volgens mij niets mis met de haakjes of accolades. Jouw probleem zit hem in het gebruik van de == operator. Deze test op reference equality, en je moet value equality hebben. Dus met == test je of twee object references gelijk zijn, en dat is niet wat je wilt, je wilt de waardes vergelijken.

Verander de if statements eens zo:

if (loginMethod.toUpperCase().equals("L")) {
Verwijderde gebruiker
7 jaar geleden
Deel jouw antwoord
0 / 2500
Geef Antwoord
logo van Kompas Publishing

GoeieVraag.nl is onderdeel van Kompas Publishing