์ฝ”๋”ฉํ…Œ์ŠคํŠธ

[๋ฌธ์ž์—ด] 1. ๋ฌธ์ž ์ฐพ๊ธฐ

์‹œํ๋ฆฌํ‹ฐ์ง€ํ˜ธ 2023. 11. 25. 23:26
1. ๋ฌธ์ž ์ฐพ๊ธฐ
 

์„ค๋ช…

ํ•œ ๊ฐœ์˜ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›๊ณ , ํŠน์ • ๋ฌธ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ด๋‹น ํŠน์ •๋ฌธ์ž๊ฐ€ ์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์— ๋ช‡ ๊ฐœ ์กด์žฌํ•˜๋Š”์ง€ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 100์„ ๋„˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ž…๋ ฅ

์ฒซ ์ค„์— ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง€๊ณ , ๋‘ ๋ฒˆ์งธ ์ค„์— ๋ฌธ์ž๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

๋ฌธ์ž์—ด์€ ์˜์–ด ์•ŒํŒŒ๋ฒณ์œผ๋กœ๋งŒ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ๋ ฅ

์ฒซ ์ค„์— ํ•ด๋‹น ๋ฌธ์ž์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์˜ˆ์‹œ ์ž…๋ ฅ 1 

Computercooler
c

์˜ˆ์‹œ ์ถœ๋ ฅ 1

2

 

 

 

<<ํ’€์ด>>

 

์ด ๋ฌธ์ œ์˜ ํ’€์ด ๋ฒ•์—๋Š” ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ํ•˜๋‚˜๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ˜๋ณต๊ตฌ๋ฌธ์œผ๋กœ ํ•˜๋Š” ๊ฒƒ์ด ์žˆ๊ณ  ๋˜ ํ•˜๋‚˜๋Š” ํ–ฅ์ƒ๋œ for๋ฌธ์œผ๋กœ ์ด์šฉํ•œ๋‹ค.

 

-for๋ฌธ-

import java.util.Scanner;

class Main {
    int answer = 0;

    public int solution(String str, char c) {
        String capitalStr = str.toUpperCase();
        char capitalc = Character.toUpperCase(c);

        for (int i = 0; i < capitalStr.length(); i++) {
            if (capitalStr.charAt(i) == capitalc) answer++;
        }

        return answer;
    }

    public static void main(String[] args) {
        Main T = new Main();
        Scanner in = new Scanner(System.in);

        String str = in.nextLine();
        char c = in.nextLine().charAt(0);
        System.out.println(T.solution(str, c));
    }
}

 

-ํ–ฅ์ƒ๋œ for๋ฌธ-

import java.util.Scanner;

class Main {
    int answer = 0;

    public int solution(String str, char c) {
        String capitalStr = str.toUpperCase();
        char capitalc = Character.toUpperCase(c);

        for (char a : capitalStr.toCharArray()) {
            if (a == capitalc) answer++;
        }
        return answer;
    }

    public static void main(String[] args) {
        Main T = new Main();
        Scanner in = new Scanner(System.in);

        String str = in.nextLine();
        char c = in.nextLine().charAt(0);
        System.out.println(T.solution(str, c));
    }
}

 

 

<<์ถ”๊ฐ€ ์ง€์‹>>

ํฌ์žฅ ํด๋ž˜์Šค

ํฌ์žฅ ํด๋ž˜์Šค ์ค‘ ํ•˜๋‚˜์ธ Character ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ์™€ String ๋ฉ”์„œ๋“œ ์ •๋ฆฌ

 

String ํด๋ž˜์Šค

 

split()

-> ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋„˜์–ด์˜จ ๋ฌธ์ž ๊ธฐ์ค€์œผ๋กœ String์„ String ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ

String[] strs = str.split(" ");

 

indexOf()

-> String์—์„œ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋„˜์–ด์˜จ ๋ฌธ์ž๋ฅผ ์ฐพ๋Š” ๊ฒƒ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ, ๋ชป ์ฐพ์œผ๋ฉด -1์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

int index = str.indexOf("a");

 

substring()

-> String์„ ๋ถ„ํ• ํ•˜๋Š” ๊ฒƒ

str = str.substring(5);

์šฐ์„  ์ฒซ ๋ฒˆ์งธ๋Š” ์ธ๋ฑ์Šค 5๋ฒˆ๋ถ€ํ„ฐ ๋๊นŒ์ง€๋ฅผ ๋ถ„ํ• ํ•˜์—ฌ ๋‹ค์‹œ ๋ณ€์ˆ˜์— ์ฐธ์กฐ ์‹œํ‚ด

str = str.substring(1,5);

์ธ๋ฑ์Šค 1๋ฒˆ ๋ถ€ํ„ฐ 5๋ฒˆ ์ „๊นŒ์ง€ ์ฆ‰ 1์ด์ƒ 4์ดํ•˜์˜ ์ธ๋ฑ์Šค๋ฅผ ๋ถ„ํ• ํ•˜์—ฌ ๋‹ค์‹œ ๋ณ€์ˆ˜์— ์ฐธ์กฐ ์‹œํ‚ด

 

replace()

-> ๋ฌธ์žฅ์˜ ํŠน์ • ๋ฌธ์ž๋ฅผ ์›ํ•˜๋Š” ๋ถ€๋ถ„์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ

String a = str.replace('f', '1').replace('a', '2');

๋ฌธ์ž์—ด์— ์žˆ๋Š” f๋ผ๋Š” ๋‹จ์–ด๋ฅผ 1 ๊ทธ๋ฆฌ๊ณ  a๋ผ๋Š” ๋‹จ์–ด๋ฅผ 2๋ผ๋Š” ๋ฌธ์ž๋กœ ๋ฐ”๊ฟ” ๋‹ค์‹œ ๋ณ€์ˆ˜์— ์ฐธ์กฐ์‹œํ‚จ๋‹ค.

์ด์ฒ˜๋Ÿผ ๋‘ ๋ฒˆ ์ด์ƒ ์—ฐ๋‹ฌ์•„์„œ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

replaceAll()

-> ๋ฌธ์žฅ์˜ ํŠน์ • ๋ฌธ์ž๋“ค์„ ์›ํ•˜๋Š” ๋ฌธ์ž๋กœ ๋ฐ”๊พธ๋Š” ๋ฉ”์†Œ๋“œ

String a = str.replaceAll("[^A-Z]]", "");

๋Œ€๋ฌธ์ž A-Z ์ด์™ธ์˜ ๋ฌธ์ž๋“ค์„ ๋นˆ ๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ” ๋ฒ„๋ฆผ

[^A-Z] ๊ฐ™์€ ํ˜•์‹์€ ๋”ฐ๋กœ ์ •๋ฆฌํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

 

repeat()

-> ํŠน์ • ๋ฌธ์ž์—ด์„ ๋ฐ˜๋ณตํ•˜๋Š” ๋ฉ”์†Œ๋“œ

String a = str.repeat(5);

str์˜ ๋ฌธ์ž์—ด์„ 5๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ๋ฌธ์ž์—ด์„ ๋งŒ๋“  ํ›„์— a์— ๋‹ค์‹œ ์ฐธ์กฐ ์‹œํ‚จ๋‹ค.

 

toCharArray()

-> String์„ char ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ ์ด ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•ด ์ž๋ฆฌ๋ณ€ํ™˜ ๋“ฑ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.

char[] a = str.toCharArray();

 

 

๋ฐ˜๋ณต๋ฌธ์—์„œ๋„ ๋งŽ์ด ์“ฐ์ธ๋‹ค.

 

 

Character ํด๋ž˜์Šค

 

isUpperCase() / isLowerCase()

-> ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ ๋Œ€๋ฌธ์ž/์†Œ๋ฌธ์ž์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฉ”์†Œ๋“œ boolean ๊ฐ’์ด ๋ฆฌํ„ด๋œ๋‹ค.

()์•ˆ์— ํ•ด๋‹น char์„ ๋„ฃ์–ด์ค˜์•ผ ํ•œ๋‹ค.

 

toUpperCase()/toLowercase()

-> ํ•ด๋‹น ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž/์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฉ”์†Œ๋“œ

()์•ˆ์— ํ•ด๋‹น char์„ ๋„ฃ์–ด์ค˜์•ผ ํ•œ๋‹ค.

 

isAlphabetic()

-> ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ ์•ŒํŒŒ๋ฒณ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฉ”์†Œ๋“œ

 

isDigit()

-> ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ ์ˆซ์ž์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฉ”์†Œ๋“œ