Java에서 문자열 다루기

java에서 문자열이 일치하는지 확인할때 주의점이 있습니다!

== 연산자는 문자열 내용을 확인하는 것이 아니라 참조를 비교하므로 문자열의 일치 여부가 아닙니다.

String str1 = "Java";
String str2 = "Java";

// 올바른 방법: equals() 메서드 사용
if (str1.equals(str2)) {
    System.out.println("Strings are equal.");
}

// 틀린 방법: == 연산자 사용 (참조를 비교하므로 false가 될 수 있음)
if (str1 == str2) {
    System.out.println("Strings are equal.");
}

substring() 예제

public class SubstringExample {
    public static void main(String[] args) {
        String originalString = "Hello, World!";
        
        // substring(startIndex): startIndex부터 끝까지의 부분 문자열 반환
        String substring1 = originalString.substring(7);
        System.out.println("Substring 1: " + substring1);
        
        // substring(startIndex, endIndex): startIndex부터 endIndex 전까지의 부분 문자열 반환
        String substring2 = originalString.substring(7, 12);
        System.out.println("Substring 2: " + substring2);
    }
}

split() 예제

public class SplitExample {
    public static void main(String[] args) {
        String sentence = "Java is a programming language";
        
        // split(regex): 주어진 정규표현식에 따라 문자열을 나눠 배열로 반환
        String[] words = sentence.split("\\s+"); // 공백을 기준으로 나눔
        
        System.out.println("Words in the sentence:");
        for (String word : words) {
            System.out.println(word);
        }
    }
}

IndexOf()와 replace() 예제

public class IndexReplaceExample {
    public static void main(String[] args) {
        String originalString = "Programming is fun. Java is fun too!";
        
        // indexOf(str): 주어진 문자열이 처음으로 나타나는 인덱스 반환
        int index = originalString.indexOf("fun");
        System.out.println("Index of 'fun': " + index);
        
        // replace(oldStr, newStr): 주어진 문자열을 새로운 문자열로 대체
        String newString = originalString.replace("fun", "exciting");
        System.out.println("Original String: " + originalString);
        System.out.println("New String: " + newString);
    }
}

Leave a Comment