Ik voel gewoon dat dit een enorm simpele vraag is... en ik heb dan ook flink gezocht maar kan nergens het antwoord vinden. Het gaat er om dat ik de String uit een showInputDialog met een andere string wil vergelijken en daar toch een verschil in blijft zitten ook al zijn ze volgens mij gelijk. De enige voorbeelden die ik op internet kon vinden werd de string in een integer omgezet .. en dat lukt mij ook wel.
Maar dit lukt dus niet:
als ik als antwoord exit intype dan is de uitvoer hiervan:
var1 is gelijk aan var2
msg is niet gelijk aan 'exit' [exit]
wat ik dus niet snap is waarom msg niet gelijk is aan exitmsg... Het zijn beide Strings en bevatten beide exit
Maar dit lukt dus niet:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| import javax.swing.JOptionPane; public class Test { public static void main(String args[]) { JOptionPane myGUI = new JOptionPane(); String msg = myGUI.showInputDialog("Type een bericht: "); // msg = msg+""; String exitmsg = "exit"; String var1 = "exit"; String var2 = "exit"; if (var1 != var2) { System.out.println("var1 is ongelijk aan var2"); } else { System.out.println("var1 is gelijk aan var2"); } if (msg == exitmsg) { System.out.println("msg is gelijk aan 'exit'"); } else { System.out.println("msg is niet gelijk aan 'exit' ["+msg+"]"); } } } |
als ik als antwoord exit intype dan is de uitvoer hiervan:
var1 is gelijk aan var2
msg is niet gelijk aan 'exit' [exit]
wat ik dus niet snap is waarom msg niet gelijk is aan exitmsg... Het zijn beide Strings en bevatten beide exit