본문 바로가기
프로그래머스/LV1.자바

[프로그래머스] 서울에서 김서방 찾기.java 문자열 비교

by 몰라닉네임 2022. 10. 27.

프로그래머스 서울에서 김서방 찾기.java 

 

소스 코드

class Solution {
    public String solution(String[] seoul) {
        String answer = "";
        
        for(int i =0; i<seoul.length; i++){
            if(seoul[i].equals ("Kim")){
                answer = "김서방은 " + i + "에 있다";
            }
        }
        
        return answer;
    }
}

 

 

 

문자열 비교 

 

1. == 비교를 위한 연산자

call By Reference , 주소값을 비교한다. 주소의 값이란 실제 내용읠 값이 아닌 자료의 위치의 값이라고 생각하면 된다.

2. equals() 메소드

는 객체끼리 내용을 비교한다. Call By Value

 

ex)

public class Main {

    public static void main(String[] args){
          String str1 = "kim";
        String str2 = str1;
        String str3 = new String("kim");
        
         System.out.println("\n");
        
        // == 연산자는 주소를 비교한다.
        System.out.println(str1 == str2); // true
        // str2 에 st1 값을 넣었으므로 주소를 같이 공유한다.

        System.out.println(str1 == str3); // false
        // str1 과 str3는 각각 생성 되었으므로 주소가 다르다.

        // equals() 는 내용을 비교한다.
        System.out.println(str1.equals(str2)); // ture
        System.out.println(str1.equals(str3)); // true
        // 내용을 비교하기떄문에 abc 내용이 같으므로 true 가 반환

    }

}

 

코드 결과 사진

 

 

https://school.programmers.co.kr/learn/courses/30/lessons/12919

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr