[JAVA] Comparaison de chaînes de caractères: j'ai été pris dans le problème de vérification des compétences de Paisa

J'ai été pris dans le problème de vérification des compétences "Comparaison de chaînes de caractères" (* problème de divulgation de code OK) publié sur Paiza, donc je l'ai résumé.

Le contenu du problème est "Comparez les deux chaînes d'entrée"

Raison de se faire prendre

Je savais qu'il y avait une fonction de comparaison de chaînes, mais je ne savais pas comment le faire dans la vidéo dont je parlais, alors j'avais une idée préconçue que je ne l'utiliserais pas.

code incorrect



import java.util.*;

public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        String line1 = sc.nextLine();
        String line2 = sc.nextLine();
              
        if( line1 == line2 ){
           System.out.println("OK"); 
        }
        else{
           System.out.println("NG"); 
        }
        
    }
}

Même si le résultat de sortie est la même chaîne de caractères, "NG"

Entrez le code ci-dessous pour confirmer

Essayez de revenir en arrière



import java.util.*;


public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        String line1 = sc.nextLine();
        String line2 = sc.nextLine();
        
        //Vérifier si déclaration
        String line1 = "moji";
        String line2 = "moji";

        //Confirmation d'entrée
        System.out.println(line1);
        System.out.println(line2);
        
        if( line1 == line2 ){
           System.out.println("OK"); 
        }
        else{
           System.out.println("NG"); 
        }
        
    }
}
Résultat de sortie;
moji
moji
ok

Il n'y a aucun problème pour obtenir l'instruction if et l'entrée de caractères. Après tout, je pense que la comparaison de chaînes de caractères est mauvaise (condition de l'instruction if) et confirmez-la et arrive sur le site suivant. [Introduction à Java] Comment comparer des chaînes (String) ("==" et "equals") Concernant la comparaison d'équivalence du type String en Java

Code correct



import java.util.*;


public class Main {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        String line1 = sc.nextLine();
        String line2 = sc.nextLine();
        
        if( line1.equals(line2)){
           System.out.println("OK"); 
        }
        else{
           System.out.println("NG"); 
        }
        
    }
}

Recommended Posts

Comparaison de chaînes de caractères: j'ai été pris dans le problème de vérification des compétences de Paisa
L'histoire de la comparaison de chaînes de bas niveau en Java
J'ai lu la source de String
[Ruby] Je souhaite afficher uniquement le caractère impair dans la chaîne de caractères
[Java] Vérifiez si la chaîne de caractères est composée uniquement de blancs (= Vierge)
[Supprimer la première lettre de la chaîne de caractères] Ruby
J'ai compris les bases de la saisie de caractères
La partie à laquelle j'étais accro dans "Introduction à Ajax dans les applications Web Java" de NetBeans
# 1_JAVA Je veux obtenir le numéro d'index en spécifiant un caractère dans la chaîne de caractères
J'étais accro à NoSuchMethodError dans Cloud Endpoints
J'étais accro au record du modèle associé
À propos du problème de blocage dans le traitement parallèle dans la version 4.0 de gem'sprockets
A été effectué dans l'année de base de la semaine calendaire Java
Vérifiez la dépendance d'un artefact maven spécifique dans Coursier
Mettez le fichier dans les propriétés de string avec la configuration spring xml
Résolution du problème d'affichage de toutes les données du tableau
J'étais accro au réglage de laradock + VSCode + xdebug
J'étais confus parce qu'il y avait une scission dans le tableau
Je veux connaître la méthode du contrôleur où l'exception a été levée dans le ExceptionHandler de Spring Boot