Il y a des occasions où vous utilisez une comparaison pour voir si les valeurs sont égales, comme dans une instruction if. Par exemple ...
【Q1】 Un programme qui vérifie si le nombre que vous entrez correspond à la réponse
Q1.java
import java.util.Scanner;
class Q1 {
public static void main(String[] args) {
Scanner stdIn = new Scanner(System.in);
System.out.print("Entrez le numéro:");
int n = stdIn.nextInt();
if (n == 5) {
System.out.print("Par");
} else {
System.out.print("De");
}
}
}
Dans ce cas, il s'agit d'une comparaison de nombres de type int. Vous pouvez comparer en utilisant ==. Maintenant, regardons le cas suivant comme une comparaison de chaînes de caractères.
【Q2】 Programme mystère
Q1.java
import java.util.Scanner;
class Q2 {
public static void main(String[] args) {
Scanner stdIn = new Scanner(System.in);
System.out.print("Quelle est la matière première du tofu? :");
String n = stdIn.next();
if (judge.equals("soja")) {
System.out.print("Par");
} else {
System.out.print("De");
}
}
}
J'utilise égal au lieu de == pour la comparaison. La raison de l'égalité est ...
Si vous utilisez == dans une comparaison de type de classe (type de référence), ce n'est pas le contenu Ce sera une comparaison de "l'adresse" qui contient les données.