2024. 7. 4. 10:31ใ๐์๊ณ ๋ฆฌ์ฆ ํผ๋๋ฐฑ/์ฝํ ๊ด๋ จ ๊ฐ์ข
#charAt() #Character ํด๋์ค #character.isuppercase(char) #character.iswhitespace(char)
1. ๋ฌธ์ ์ฐพ๊ธฐ
๋ฌธ์ ๋ ์ธํ๋ฐ ์ฑ์ ์์คํ ์ฌ์ฉ -> ๋ฐฑ์ค ๋ฐฉ์ , ์ฝ์ ์ ์ถ๋ ฅ ํํ๋ก ์์ฑํ ๊ฒ!

[๋ด ํ์ด 1 - ์ปดํ์ผ ์๋ฌ]
import java.util.*;
class Main{
public int solution(String str, char t){ //์ฌ๊ธฐ๋ ํ๋ก๊ทธ๋๋จธ์ค ๋ฐฉ์
int answer = 0;
str = str.toUpperCase();
t = Character.toUpperCase(t);
for(int i=0; i< str.length(); i++){
if(str.charAt(i) == t) answer++;
}
return answer;
}
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); // ์ฝ์๋ก ๋ฌธ์์ด์ ์ฝ์ด๋ค์ฌ์ charAt(0)๋ฒ์งธ์ ์๋ ๋ฌธ์์ด ์ฝ๊ธฐ
System.out.print(T.solution(str,c));
}
}
ํฅ์๋ for๋ฌธ์ ํ์ฉํ ์๋ ์๋ค!
for(char x: str.toCharArray()){
if(x==t) answer ++;
}
https://hianna.tistory.com/519
[Java] ๋ฌธ์์ด(String) ๊ธธ์ด ์ฒดํฌ - length()
๋ฌธ์์ด ๊ธธ์ด ๊ตฌํ๊ธฐ - length() public class StringLength { public static void main(String[] args) { String str1 = "ABC"; String str2 = "A B C"; String str3 = "์๋ ํ์ธ์"; System.out.println(str1.length()); // 3 System.out.println(str2.length()
hianna.tistory.com
https://innovation123.tistory.com/97
[JAVA] ๋ฐฐ์ด์ ๊ธธ์ด length์๋ ๊ดํธ()๊ฐ ๋ถ์ง ์๊ณ , ๋ฌธ์์ด์ ๊ธธ์ด length()์๋ ๊ดํธ()๊ฐ ๋ถ๋ ์ด์
๋ฐฐ์ด๊ณผ ๋ฌธ์์ด์ ๊ธธ์ด ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๊ตฌํ ๋๋ ์ฌ์ฉํ๊ณ , ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ๊ตฌํ ๋๋ str.length()๋ฅผ ์ฌ์ฉํ๋ค. ์ฌ์ค ์ฝ๋ฉํ ์คํธ ์ฐ์ต๋ฌธ์ ๋ฅผ ํ ๋๋ง๋ค ๋งจ๋ ํท๊ฐ๋ ธ๋ค. ๋ฐฐ์ด์ length๋ค์ ()๋ฅผ ์ ๋ถ
innovation123.tistory.com
import java.util.*;
import java.io.*;
public class Main {
public void solution() throws Exception{
int count =0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
String str = br.readLine(); //์ฒซ๋ฒ์งธ ๋ฌธ์ฅ ์ฝ์ด์ค๊ธฐ
String chr = br.readLine(); // ๋ ๋ฒ์งธ ๋ฌธ์ฅ ์ฝ์ด์ค๊ธฐ
for(int i=0; i<str.length();i++){
int data = str.charAt(0).nextToken();
if(data == chr){
count++;
}
}
System.out.println(count);
}
public static void main(String[] args) throws Exception {
new Main().solution();
}
}
-> ์ฝ๋ ์๋ฌ

-[์์ ] -> ์๋ฐ Character ํด๋์ค ์ฌ์ฉํ์ฌ .toLowerCase()์ ์ฉ
[Character ํด๋์ค์ ๋ํด ๋ ์์๋ณด๊ธฐ]
* java.lang.Character ํด๋์ค์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ char์ ๋ํ ๋ํผ ํด๋์ค(wrapper class)์ด๋ค.
Q. ๋ํผ ํด๋์ค(Wrapper class)?
- Integer ์ Double ๊ณผ ๊ฐ์ ๋ค๋ฅธ ๋ํผ ํด๋์ค์ ๋ง์ฐฌ๊ฐ์ง๋ก, Character ํด๋์ค๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ๊ฐ์ ๊ฐ์ฒด ํ์์ผ๋ก ํํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
๋ฐ๋ผ์, Character ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ, Vector๋ ArrayList์ ๊ฐ์ ์ฝ๋ ์ ๊ฐ์ฒด์ char ํ์ ์ ๋ํ๋ด๋ ๊ฐ์ ์ ์ฅํ ์ ์๋ค. ๋ํ Character ํด๋์ค๋ ์ ๋์ฝ๋ ์บ๋ฆญํฐ๋ฅผ ์ฒ๋ฆฌํ ๋ ์ฌ์ฉ๋๋ ๋ช๋ช ๋ฉ์๋์ ์์๊ฐ์ ์ ๊ณตํ๊ณ ์๋ค.
[Character ํด๋์ค๊ฐ ์ ๊ณตํ๋ ๋ฉ์๋]
Character.isUpperCase(char) : ํด๋น ๋ฌธ์๊ฐ ๋๋ฌธ์์ธ์ง ํ๋ณ
Character.isLowerCase(char) : ํด๋น ๋ฌธ์๊ฐ ์๋ฌธ์์ธ์ง ํ๋ณ
Character.isLetter(char) : ๋ฌธ์์ธ์ง ํ๋ณ
Character.isDigit(char) : ์ซ์์ธ์ง ํ๋ณ
Character.isWhitespace(char) : ์ ๋์ฝ๋ ๊ณต๋ฐฑ ๋ฌธ์์ธ์ง ํ๋ณ
Character.isSpace() : ๊ณต๋ฐฑ ๋ฟ๋ง ์๋๋ผ, ํญ, ์บ๋ฆฌ์ง ๋ฆฌํด(์ปค์๋ฅผ ์ค ๋งจ ์์ผ๋ก ๊ฐ์ ธ์ค๊ธฐ), ๋ผ์ธํผ๋(์ปค์๋ฅผ ๋ค์์ค๋ก) ์ ๊ฐ์ ๊ฐํ๋ฌธ์("\t", "\n", "\v","\f","\r") ์ธ์ง๋ ํ๋ณ
Character.toString(char) : charํ์ ์ Stringํ์ ์ผ๋ก ๋ณํ ๊ฐ
char ch='\t';
System.out.println(Character.isWhitespace(ch));
System.out.println( Character.isSpaceChar(ch));
์ ์ฝ๋์ ๊ฒฐ๊ณผ๋ ์๋์ ๊ฐ๋ค
true
false
-[์์ 2] StringTokenizer -> charAt()์ฌ์ฉ
1. **StringTokenizer**:
- `StringTokenizer`๋ ์ฃผ๋ก ๊ณต๋ฐฑ์ด๋ ๋ค๋ฅธ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ํ ํฐ(token)์ผ๋ก ๋ถ๋ฆฌํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
- ์๋ฅผ ๋ค์ด, "1 2 3 4 5"์ ๊ฐ์ ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ํ ํฐ์ผ๋ก ๋ถ๋ฆฌํ์ฌ ๊ฐ ์ซ์๋ฅผ ๋ฐ๋ก ์ฒ๋ฆฌํ ๋ ์ ์ฉํฉ๋๋ค.
2. **str.charAt(i)**:
- `str.charAt(i)`๋ ๋ฌธ์์ด `str`์์ ํน์ ์์น `i`์ ์๋ ๋ฌธ์๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฉ์๋์
๋๋ค.
- ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฌธ์์ด์ ์ํํ๋ฉด์ ๊ฐ ๋ฌธ์๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
-[ํต๊ณผ]
import java.io.*;
public class Main {
public void solution() throws Exception {
int count = 0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// ์ฒซ๋ฒ์งธ ๋ฌธ์ฅ ์ฝ์ด์ค๊ธฐ
String str = br.readLine();
// ๋ ๋ฒ์งธ ๋ฌธ์ฅ ์ฝ์ด์ค๊ธฐ (๋น๊ตํ ๋ฌธ์ ํ๋ ์ฝ์ด์ค๊ธฐ)
char targetChar = (char) br.read(); // ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ง ์ฝ์ด์ด
targetChar = Character.toLowerCase(targetChar); // ๋น๊ตํ ๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ณํ
// str์์ targetChar์ ๋ฑ์ฅ ํ์๋ฅผ ์
๋๋ค.
for (int i = 0; i < str.length(); i++) {
if (str.toLowerCase().charAt(i)== targetChar) {
count++;
}
}
System.out.println(count);
}
public static void main(String[] args) throws Exception {
new Main().solution();
}
}
์ฐธ๊ณ ์๋ฃ
https://blog.naver.com/ycpiglet/222155201861
๋ผ์ธ ํผ๋์ ์บ๋ฆฌ์ง ๋ฆฌํด์ด๋? (Line Feed & Carriage Return) / ๊ฐํ๋ฌธ์(\n), EOL
ํต์ ์ ๊ณต๋ถํ๊ฑฐ๋, ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด ์บ๋ฆฌ์ง ๋ฆฌํด๊ณผ ๋ผ์ธ ํผ๋๋ผ๋ ์ฉ์ด๋ฅผ ์ ํ๊ฒ ๋๋ค. ๋ผ์ธ ํผ๋...
blog.naver.com
https://manual.gamemaker.io/beta/en/Additional_Information/Whitespace_Characters.htm
-> ๊ฐํ๋ฌธ์์ ๋ํด์ ๋ ์์๋ณด๋ ค๋ฉด ์์ ๋งํฌ ์ฐธ๊ณ
https://itellyhood.tistory.com/71
[์๋ฐ]_java Integer ํด๋์ค,Character ํด๋์ค/๋ฉ์๋ ์ ๋ฆฌ/๋ค์ํ ํ๋ณํ int to char/parseInt/
Integer ํด๋์ค &Character ํด๋์ค์ ๋ํด ์์๋ณด์ [์๋ฐ ์ด๋ก ] Integer ํด๋์ค_ํค์๋ โ java.lang.Character ํด๋์ค๋ ๊ธฐ๋ณธ ํ ์ดํฐ ํ์ ์ char์ ๋ํ ๋ํผ ํด๋์ค(wrapper class) โ Integer๋ Double๊ณผ ๊ฐ์ ๋ค๋ฅธ
itellyhood.tistory.com