종식당

자바 알고리즘 문제풀이 6. 중복문자제거(indexOf) 본문

자바 알고리즘 문제풀이

자바 알고리즘 문제풀이 6. 중복문자제거(indexOf)

종식당 2024. 11. 1. 17:43
728x90
반응형

 

  • 문제 설명
    첫째줄에 문자를 입력받으면 중복된 문자를 제거하고 출력하면 되는 문제이다.

 

  • 제출 코드
import java.util.*;

public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String str = sc.next();

        String answer = "";

        for(int i = 0; i < str.length(); i++){
            if(i == str.indexOf(str.charAt(i))){
               answer += str.charAt(i);
            }
        }
        System.out.println(answer);
    }
}

 

  • 코드 설명
    indexOf()함수를 통해서 문자열에서 문자가 나오는 첫번째 index를 알 수 있다. 이 index와 for문을 돌면서 i의 값과 일치하면 해당 문자가 문자열에서 첫번째 나온거라는 뜻이니 이 문자들만 따로 저장해서 출력하면 중복을 제거할 수 있다. 

  • 마무리
    indexOf()메서드
    문자열 내에서 특정 문자의 첫번째 위치나 문자열의 시작 위치 반환
String str = "Hello, world!";
int index = str.indexOf('o');         // 문자 'o'의 첫 번째 위치인 4를 반환
int index2 = str.indexOf("world");    // 문자열 "world"의 시작 위치인 7을 반환
int index3 = str.indexOf('z');        // 'z'는 없으므로 -1 반환

 

728x90
반응형