String 유형

Chaedie·2022년 5월 15일
0

Java 코테 대비

목록 보기
1/6
post-thumbnail
post-custom-banner

String 유형

Java 알고리즘 강의 내용이라 저작권 문제로 "문제"를 일부만 묘사합니다.

1. 문자 찾기

문제

  • 스트링 str에서
  • char c 의 갯수세기
  • 대소문자 구분 X

배운 것

int n = str.length();
str = str.toLowerCase(); 
str = str.toUpperCase();

if (str.charAt(i) == c){}

c = Character.toLowerCase(c); // char 는 Character로 객체화후 메서드 사용

풀이

import java.util.*;

public class Main {

    public int solution(String str, char t) {
        int n = str.length();
        int count = 0;
        str = str.toLowerCase();
        t = Character.toLowerCase(t);

//        for (int i = 0; i < n; i++) {
//            if (str.charAt(i) == t) {
//                count++;
//            }
//        }
        for (char c : str.toCharArray()) {
            if (c == t) {
                count++;
            }
        }
        return count;
    }

    public static void main(String[] args) {
        Main T = new Main();
        Scanner kb = new Scanner(System.in);
        String str = kb.next();
        char c = kb.next().charAt(0);

//        String str = "Computercooler";
//        char c = 'c';

        System.out.println(T.solution(str, c));
    }
}

2. 대소문자 변환

문제

대문자 → 소문자

소문자 → 대문자

풀이

  • 내가 짠 코드
	public String solution(String words) {
	    char[] charArray = words.toCharArray();

	    for (int i = 0; i < words.length(); i++) {
	        if (Character.isUpperCase(charArray[i])) {
	            charArray[i] = Character.toLowerCase(charArray[i]);
	        } else {
	            charArray[i] = Character.toUpperCase(charArray[i]);
	        }
	    }
	    return String.valueOf(charArray);
	}

다른 풀이

  • 강사님 코드
	public String solution(String words) {
        String answer = "";
        for (char x : str.toCharArray()) {
            if (Character.isLowerCase(x)) {
                answer += Character.toUpperCase(x);
            } else {
                answer += Character.toLowerCase(x);
            }
        }
        return answer;
    }

배운 것

return answer; 로 답내는걸 연습 해야 하나보다.

릿코드도 return으로 했었지?

문제에서 요구하는 출력을 만드는것도 중요하지만,

실제로는 함수를 구현하는게 목표일 테니까 앞으론 리턴 하는걸로 해보자.

profile
TIL Blog - Today's Intensive Learning!
post-custom-banner

0개의 댓글