강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

Rain D님의 프로필 이미지
Rain D

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

2. 대소문자 변환

문자 형식과 String 형식 질문 있습니다!

작성

·

168

0

answer 은 String 형식이고 

x는 char 형식인데 

answer += (char)(x-32);

이렇게  누적할 수 있는건가요 ??

import java.util.Scanner;

public class Main{

public static String solution(String str){
String answer = "";

for(char c : str.toCharArray()){
if(65<=c && c<=90)
answer += Character.toString(c+32);
else
answer += Character.toString(c-32);
}
return answer;
}

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

System.out.println(solution(str));
}
}

저는 그래서 toString 으로 했는데 인텔리제이에서 돌리면 정상적으로 되는데  채점하면 컴파일 오류가 생기네요....

 

왜그런걸까요 ???

퀴즈

대소문자를 구분하지 않고 문자열 내 특정 문자의 총 개수를 세려면, 어떤 방법이 가장 효율적일까요?

문자열을 반복하며 각 문자가 찾으려는 문자의 대문자 또는 소문자인지 모두 비교한다.

문자열 전체를 한 가지 케이스(예: 모두 대문자)로 통일한 후 해당 문자의 개수를 센다.

대문자와 소문자의 개수를 각각 세어 합산한다.

Set 자료구조를 사용하여 중복 없이 문자를 저장한 후 개수를 센다.

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

toString 에서 데이터 손실이 있다는 에러가 납니다. 사용하지 않는게 좋겠습니다.

Rain D님의 프로필 이미지
Rain D

작성한 질문수

질문하기