๐Ÿ›ผ study/๐Ÿ“ฒ tech

[java] java ๊ธฐ์ดˆ ๋ฌธ๋ฒ• ์ •๋ฆฌ - ๋ฌธ์ž์—ด, ๋ฌธ์ž

jcowwk 2024. 4. 8. 17:00

java ๊ธฐ์ดˆ ๋ฌธ๋ฒ• ์ •๋ฆฌ - ๋ฌธ์ž์—ด, ๋ฌธ์ž


ํ˜„์žฌ ์‹œ์  ๊ธฐ์ค€์œผ๋กœ

๋ฌธ์ž์—ด, ๋ฌธ์ž์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ ํ’€๋ฉด์„œ ์ž์ฃผ ๋‚˜์˜จ ๋‚ด์šฉ์„ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค !

 

1. ๋ฌธ์ž์—ด ํ•œ ๋ฌธ์ž ์”ฉ ์ถœ๋ ฅ

2. ๋ฐฐ์—ด ๋ฐ ๋ฌธ์ž์—ด ํฌ๊ธฐ ๊ตฌํ•˜๊ธฐ

3. ๋ฌธ์ž์—ด -> ๋ฌธ์ž ๋ฐฐ์—ด

4. StringBuilder

5. Scanner, BufferdReader, BufferdWriter, StringTokenizer

6. for-each ๋ฌธ


1. ๋ฌธ์ž์—ด ํ•œ ๋ฌธ์ž ์”ฉ ์ถœ๋ ฅ

str.charAt(i)

๋ฌธ์ž์—ด ๋ณ€์ˆ˜ str์—์„œ ์ธ๋ฑ์Šค i์— ํ•ด๋‹นํ•˜๋Š” ์œ„์น˜์— ์žˆ๋Š” ๋ฌธ์ž ๊ฐ€์ ธ์˜ค๊ธฐ

 

2. ๋ฐฐ์—ด ๋ฐ ๋ฌธ์ž์—ด ํฌ๊ธฐ ๊ตฌํ•˜๊ธฐ

- ๋ฐฐ์—ด

a.length;

 

- ๋ฌธ์ž์—ด

a.length();

 

3. ๋ฌธ์ž์—ด -> ๋ฌธ์ž ๋ฐฐ์—ด

my_string.toCharArray()

๋ฌธ์ž์—ด ๋ณ€์ˆ˜ my_string์„ ๋ฌธ์ž ๋ฐฐ์—ด๋กœ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜

 

4. StringBuilder

๋ฌธ์ž์—ด์„ ์ด์–ด ๋ถ™์ผ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

StringBuilder sb = new StringBuilder("Hello");

sb.append(" ").append("World"); // ๋ฌธ์ž์—ด ์ถ”๊ฐ€
sb.insert(5, ", "); // ๋ฌธ์ž์—ด ์‚ฝ์ž…
sb.replace(5, 6, "!"); // ๋ฌธ์ž์—ด ๊ต์ฒด
sb.delete(6, 11); // ๋ฌธ์ž์—ด ์‚ญ์ œ
String result = sb.toString(); // ๋ฌธ์ž์—ด ๋ฐ˜ํ™˜
System.out.println(result);

 

5. Scanner, BufferdReader, BufferdWriter, StringTokenizer

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ Scanner๋กœ ํ’€๋ฉด์„œ

๋ถ„๋ช… ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ์ผ์–ด๋‚˜์ง€ ์•Š์„ ๋ฒ•ํ•œ ๋ฌธ์ œ์ธ๋ฐ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์„œ ๋‹นํ™ฉํ•œ ์ ์ด ์žˆ๋‹ค.

์ด๋•Œ ์ธํ„ฐ๋„ท์— ๊ฒ€์ƒ‰ํ•ด๋ณด๊ณ  BufferdReader๋ฅผ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.

 

- Scanner

์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•  ๋•Œ๋งˆ๋‹ค ์ „์†ก๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹œ๊ฐ„์ด ๋งŽ์ด ์†Œ์š”๋œ๋‹ค.

๋‹ค์–‘ํ•œ ํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

 

- BufferdReader

์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ๋ฒˆ์— ์ฝ์–ด์˜จ๋‹ค.

์ž…์ถœ๋ ฅ ์†๋„ ํ–ฅ์ƒ์„ ์œ„ํ•ด์„œ๋Š” ๋ฒ„ํผ๋ฅผ ํ™œ์šฉํ•œ๋‹ค.

String ํƒ€์ž…์œผ๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค๋ฅธ ํƒ€์ž…์œผ๋กœ ์ž…๋ ฅ๋ฐ›๊ธฐ ์œ„ํ•ด์„œ๋Š” ํ˜•๋ณ€ํ™˜์ด ํ•„์š”ํ•˜๋‹ค.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int i = Integer.parseInt(br.readLine());

 

- BufferdWriter

BufferReader ๋Š” ์ž…๋ ฅ ์†๋„ ํ–ฅ์ƒ, BufferWriter๋Š” ์ถœ๋ ฅ ์†๋„ ํ–ฅ์ƒ์— ํ™œ์šฉํ•œ๋‹ค.

System.out.println() ์ฒ˜๋Ÿผ ๊ฐœํ–‰์„ ํ•ด์ฃผ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— bw.newLine() ์œผ๋กœ ์ค„๋ฐ”๊ฟˆํ•œ๋‹ค.

 

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;

BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write("Hello, world!");
bw.newLine();
bw.flush(); // ๋‚ด์šฉ ์ถœ๋ ฅ ํ›„, ๋ฒ„ํผ ๋น„์šฐ๊ธฐ

 

- StringTokenizer

๋ฌธ์ž์—ด์„ ์ง€์ •ํ•œ ๊ตฌ๋ถ„์ž๋กœ ์ชผ๊ฐœ์ฃผ๋Š” ํด๋ž˜์Šค์ด๋‹ค.

๊ตฌ๋ถ„์ž๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ์˜ default๋Š” ๊ณต๋ฐฑ์ด๋‹ค.

 

import java.util.StringTokenizer;

StringTokenizer st = new StringTokenizer("Hello,world,Java", ",");

while (st.hasMoreTokens()) {
    String token = st.nextToken();
    System.out.println(token);
}

 

6. for-each ๋ฌธ

String[] arr ๋ฐฐ์—ด ์•ˆ์— apple, banana, carrot ์ด ์žˆ์„ ๋•Œ

๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋งŒ ์ถœ๋ ฅํ•˜๊ฑฐ๋‚˜, ๊ฐ ๋‹จ์–ด๋ฅผ ์ถœ๋ ฅํ•˜๊ณ  ์‹ถ์„ ์ˆ˜๋„ ์žˆ๋‹ค.

์ด๋•Œ ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ์ข‹์„๊นŒ?

 

for-each๋ฌธ์€ ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฐ˜๋ณต๋ฌธ์ด๋‹ค.

 

- ๋ฐฐ์—ด ์•ˆ ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋งŒ ์ถœ๋ ฅํ•˜๊ธฐ

for (String s : arr) {
    System.out.println(s.charAt(0));
}

 

- ๋ฐฐ์—ด ์•ˆ ๊ฐ ๋‹จ์–ด ์ถœ๋ ฅํ•˜๊ธฐ

for (String s : arr) {
    System.out.println(s);
}