[๋ฌธ์์ด] 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()
-> ํด๋น ๋ฌธ์๊ฐ ์ซ์์ธ์ง ํ์ธํ๋ ๋ฉ์๋