Le "==" utilisé pour les valeurs numériques ne peut pas être utilisé pour la comparaison de chaînes de caractères. Pour les chaînes de caractères, utilisez "** est égal à **".
La façon d'écrire est un peu différente de quand "=="
Variable a.equals(Variable b)
Il semble écrire. Lorsque vous voulez comparer les variables s1 et s2 avec if, utilisez-le comme ceci ↓
String s1 = "tomato", s2 = "tomato";
if (s1.equals(s2)){
System.out.println("rencontre");
}
Cette ↑ est exécutée si lorsque s1 et s2 correspondent Si vous souhaitez "lorsque les chaînes de caractères ne correspondent pas" Entourez l'expression conditionnelle de "()" et ajoutez "!" Devant elle.
!(Variable a.equals(Variable b))
Lorsque les variables s1 et s2 sont différentes, il faut ↓ s'exécuter en si
String s1 = "tomato", s2 = "potato";
if (!(s1.equals(s2))){
System.out.println("Décalage");
}
Se sentir habitué à utiliser "!" Pour le déni.
La première fois que vous mettez une valeur dans une variable, c'est si, Une erreur s'est produite lors de la tentative d'utilisation de la valeur de cette variable dans un traitement ultérieur.
Tu ne sais peut-être pas ce que tu veux dire Est-ce que la personne qui l'écrit comme "Hmm?" Je ne veux pas que tu t'inquiètes pour ça.
L'erreur s'est produite lorsque ↓
Yomogi.java
public class Yomogi{
public static void main(String[] args){
int a, b;
a = 1;
if (a == 1){
b = 1; //Avec ça
}
System.out.println("b = " + b); //Cette relation est inutile
}
}
Puisque 1 est entré dans la variable a, si devient vrai à 100% C'est très bien car le traitement à l'intérieur de if est exécuté. J'ai pensé, mais cela n'a pas fonctionné.
Il semble que le problème soit que la valeur a été saisie pour la première fois dans if. Par conséquent, entrez une valeur appropriée dans la variable b à l'avance.
Yomogi.java
public class Yomogi{
public static void main(String[] args){
int a, b;
a = 1;
b = 0; //Initialiser avec 0 à l'avance
if (a == 1){
b = 1;
}
System.out.println("b = " + b);
}
}
Cela a bien fonctionné de cette façon. Je vois, java a ce genre de spécification.
J'ai compris.
Même si la première affectation à une variable est dans si C'était correct d'utiliser cette variable uniquement dans if, alors j'ai décidé de m'en souvenir.
Yomogi.java
public class Yomogi{
public static void main(String[] args){
int a, b;
a = 1;
if (a == 1){
b = 1;
System.out.println("b = " + b); //Il est possible de l'utiliser uniquement si
}
}
}
Lorsque vous utilisez if, vous devez être prudent lors de l'affectation à des variables. C'était une rencontre avec une erreur que je pensais.
Recommended Posts