문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.
1 ≤ my_string ≤ 110
my_string은 대문자, 소문자, 공백으로 구성되어 있습니다.
대문자와 소문자를 구분합니다.
공백(" ")도 하나의 문자로 구분합니다.
중복된 문자 중 가장 앞에 있는 문자를 남깁니다.
문자열을 char로 하나하나 잘라낸다음, 문자열리스트에 넣을때 같지 않은 경우만 넣는 반복문을 만들면 되나? 앞 뒤에 같은 값이 있는지를 비교하기에는 비교 대상이 전 문자열에 있으니까 그건 안되고...
import java.util.*;
class Solution {
public String solution(String my_string) {
char[] charArr = my_string.toCharArray();
List<String> arr = new ArrayList();
for(int i = 0 ; i < my_string.length() ; i++ ){
if(!arr.contains(String.valueOf(my_string.charAt(i)))){
arr.add(String.valueOf(my_string.charAt(i)));
}
}
return String.join("",arr);
}
}
// join("추가할 문자", "대상 list")
// join("추가할 문자", "대상 Array")
char을 통해 나눈 값들을 List에 넣을때 중복된 값이 들어가지 않게 if문을 걸어서 같은 char과 List의 같은 인덱스 값을 비교해서 반복문을 통해 넣을수 있다. join을 이용해서 리스트와 배열을 합칠수 있다.