Warmup-1 delDel

현우·2021년 9월 26일
0

CodingTest

목록 보기
1/9

Coding Bat Warmup-1 delDel

문제는 다음과 같다.

두 번째부터 있는 del을 지우자!


1. 고려할 사항


2. 나의 풀이

public String delDel(String str) {
  if(str.length()<=3) 
    return str;
  // 3글자 이하인 경우 두 번째부터 del이 없기 때문에 str을 반환한다.
    
  if(!str.substring(1,4).equals("del"))
    return str;
  //   
    
  String array[] = str.split("del");
  
  if(array.length == 1)
    return array[0];
  else
    return array[0] + array[1];
}

3. 정답

public String delDel(String str) {
  if (str.length()>=4 && str.substring(1, 4).equals("del")) {
    return str.substring(0, 1) + str.substring(4);
  }
  return str;
}

4. 사용한 메서드

String의 자르기 substring

substing은 문자열을 파싱하는 메서드이다.
인덱스를 기준으로 매개변수로 주어진 인덱스의 문자열을 반환한다.

 "hamburger".substring(4, 8)    returns "urge"
 "hamburger".substring(8)       returns "urger"
 

String의 비교 equals

equals는 object의 내용을 비교하는 메서드로 string 인스턴스 끼리의 내용을 비교한다.

str1.equals(str2) : false
str2.equals(str1) : false
str1.equals(str3) : true

'==' 를 사용하면 되는거 아니야?

equals는 object의 내용 자체를 비교한다.
== 연산자는 object의 주소값을 비교한다.

String의 나누기 split
split는 주어진 매개변수를 기준으로 문자열을 쪼개서 리스트 형식으로 반환한다.

String str = "emample";

str.split("e")       returns [mample]
str.split("m")    returns [e, a, ple]

0개의 댓글