μλ° νλ‘κ·Έλλ°μμ λ¬Έμμ΄κ³Ό λ¬Έμ νμ μ λ§€μ° μ€μν©λλ€. μ΄ λμ νλ‘κ·Έλ¨μμ ν μ€νΈ λ°μ΄ν°λ₯Ό λ€λ£¨λ λ° νμμ μ΄λ©°, μ¬λ°λ₯΄κ² μ²λ¦¬νμ§ μμΌλ©΄ μκΈ°μΉ λͺ»ν κ²°κ³Όλ₯Ό μ΄λν μ μμ΅λλ€. μ΄λ² κΈμμλ μλ°μμ λ¬Έμ νμ μ νμ©νλ λ°©λ²κ³Ό λ¬Έμμ΄ μ²λ¦¬μ ν΅μ¬μ λν΄ μμλ³΄κ² μ΅λλ€.
β£ λͺ©μ°¨
1. λ¬Έμμ΄ νμ : Stringπ¬
String ν΄λμ€λ μλ°μμ κ°μ₯ λ§μ΄ μ¬μ©λλ ν΄λμ€ μ€ νλμ λλ€. ν°λ°μ΄νλ‘ κ°μΌ λ¬Έμμ΄μ λ³μμ μ μ₯νμ¬ μ¬μ©ν©λλ€. λ¬Έμμ΄μ λ€λ£¨λλ° νμν λ€μν λ©μλμ κΈ°λ₯μ μ 곡ν©λλ€.
// μμ μ½λ: String ν΄λμ€ νμ©
public class StringExample {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "World";
// λ¬Έμμ΄ μ°κ²°
String result = str1 + " " + str2;
System.out.println("κ²°κ³Ό: " + result);
// λ¬Έμμ΄ κΈΈμ΄ κ΅¬νκΈ°
int length = result.length();
System.out.println("κΈΈμ΄: " + length);
// λ¬Έμμ΄ λΉκ΅
boolean isEqual = str1.equals(str2);
System.out.println("λμΌν λ¬Έμμ΄μΈκ°μ? " + isEqual);
}
}
2. μ΄μ€μΌμ΄ν λ¬Έμπ§·
μ΄μ€μΌμ΄ν λ¬Έμλ μμ¬λμ(\)μ νΉμ λ¬Έμκ° κ²°ν©νμ¬ μ¬μ©λλ νΉλ³ν λ¬Έμμ λλ€. μ΄μ€μΌμ΄ν λ¬Έμλ₯Ό μ¬μ©νλ©΄ λ¬Έμμ΄ μμ νΉμν λ¬Έμλ₯Ό μ½μ νκ±°λ νΉμν λμμ μνν μ μμ΅λλ€.
λͺ κ°μ§ μ£Όμν μ΄μ€μΌμ΄ν λ¬Έμλ€μ μ΄ν΄λ³΄κ² μ΅λλ€:
- \n: μ μ€(μ€ λ°κΏ)
- \t: μν ν
- \\: μμ¬λμ λ¬Έμ μ체
- \": ν°λ°μ΄ν
- \': μμλ°μ΄ν
// μ΄μ€μΌμ΄ν λ¬Έμ μμ
public class EscapeCharactersExample {
public static void main(String[] args) {
// μ€ λ°κΏ λ¬Έμ(\n)λ₯Ό μ¬μ©νμ¬ λ¬Έμμ΄μ μ¬λ¬ μ€λ‘ μΆλ ₯
System.out.println("μ¬λ¬ μ€λ‘\nλλ μ\nμΆλ ₯νκΈ°");
// μν ν(\t)μ μ¬μ©νμ¬ κ°κ²©μ μ‘°μ νμ¬ μΆλ ₯
System.out.println("ν\tμ\tμ¬μ©ν\tμΆλ ₯");
// μμ¬λμ μ체λ₯Ό μΆλ ₯
System.out.println("μμ¬λμ μΆλ ₯: \\");
// ν°λ°μ΄νλ₯Ό λ¬Έμμ΄ μμ μΆλ ₯
System.out.println("μ΄ λ¬Έμμ΄μ ν°λ°μ΄ν(\")λ₯Ό ν¬ν¨ν©λλ€.");
// μμλ°μ΄νλ₯Ό λ¬Έμμ΄ μμ μΆλ ₯
System.out.println("μ΄ λ¬Έμμ΄μ μμλ°μ΄ν(\')λ₯Ό ν¬ν¨ν©λλ€.");
}
}
3. ν μ€νΈ λΈλ‘π«
ν μ€νΈ λΈλ‘μ μλ° 13λΆν° λμ λ κΈ°λ₯μΌλ‘, ν°λ°μ΄ν 3κ°(""")λ‘ κ°μΌ λ¬Έμμ΄ λ¦¬ν°λ΄μ λ§ν©λλ€. μ΄λ₯Ό μ¬μ©νλ©΄ μ¬λ¬ μ€μ κ±ΈμΉ λ¬Έμμ΄μ λ³΄λ€ κ°κ²°νκ² μμ±ν μ μμ΅λλ€. ν μ€νΈ λΈλ‘μ λ¬Έμμ΄μ λ³΄λ€ μ§κ΄μ μ΄κ³ κ°νΈνκ² μμ±ν μ μλλ‘ λμμ£Όλ κΈ°λ₯μΌλ‘, μ½λμ κ°λ μ±μ ν₯μνκ³ λ¬Έμμ΄ μμ±μ λ²κ±°λ‘μμ μ€μ¬μ€λλ€. νΉν, JSONμ΄λ HTMLκ³Ό κ°μ ꡬ쑰νλ λ¬Έμμ΄μ μμ±ν λ μ μ©νκ² νμ©λ μ μμ΅λλ€.
public class TextBlockExample {
public static void main(String[] args) {
// κΈ°μ‘΄ λ¬Έμμ΄ μμ± λ°©μ
String regularString = "Hello,\n" +
"World!\n" +
"This is\n" +
"a regular string.";
// ν
μ€νΈ λΈλ‘μ μ¬μ©ν λ¬Έμμ΄ μμ±
String textBlockString = """
Hello,
World!
This is
a text block string.
""";
// λ¬Έμμ΄ μΆλ ₯
System.out.println("Regular String:");
System.out.println(regularString);
System.out.println("\nText Block String:");
System.out.println(textBlockString);
}
}
3. λ¬Έμ νμ : charπ °
μμλ°μ΄νλ‘ κ°μΌ λ¬Έμλ₯Ό λ¬Έμ 리ν°λ΄μ΄λΌκ³ νλ©°, μ΄λ μ λμ½λλ‘ λ³νλμ΄ μ μ₯λ©λλ€. μ λμ½λλ μ μΈκ³ λͺ¨λ λ¬Έμλ₯Ό λ€λ£° μ μλ νμ€ μΈμ½λ© λ°©μμ
λλ€. UTF-8μ μ΄λ¬ν μ λμ½λλ₯Ό κ°μ₯ λ리 μ¬μ©λλ νμ μ€ νλλ‘ νννλ λ°©μ μ€ νλμ
λλ€. μ λμ½λλ μΈκ³ κ°κ΅μ λ¬Έμλ₯Ό 0λΆν° 65535κΉμ§μ μ«μλ‘ λ§€νν κ΅μ νμ€ κ·μ½μ
λλ€. μλ°λ μ΄λ¬ν μ λμ½λλ₯Ό μ μ₯ν μ μλλ‘ char νμ
μ μ 곡ν©λλ€. μ λμ½λλ μ μλ‘ ννλλ―λ‘ char νμ
μ μ μ νμ
μ μν©λλ€. λ°λΌμ char λ³μμλ μμλ°μ΄νλ‘ κ°μΌ λ¬Έμ λμ μ μ λμ½λ μ«μλ₯Ό μ§μ λμ
ν μλ μμ΅λλ€. κ·Έλ¬λ char νμ
μ λ³μμ μ΄λ€ λ¬Έμλ λμ
νμ§ μκ³ λ¨μν μ΄κΈ°ννλ €λ κ²½μ° μμλ°μ΄νλ₯Ό λ κ° μ°λ¬μ λΆμ¬ λΉ λ¬Έμλ₯Ό λμ
νλ©΄ μ»΄νμΌ μλ¬κ° λ°μν©λλ€. μ΄ κ²½μ° κ³΅λ°±(μ λμ½λ: 32) νλλ₯Ό ν¬ν¨νμ¬ μ΄κΈ°νν΄μΌ ν©λλ€.
λ¨μΌ λ¬Έμ μ μ₯μ μν΄μ νμ€νλ ASCII μ½λνλ₯Ό μ°Έκ³ νλλ° λ¬Έμ λλ μ«μλ₯Ό λΉνΈμ΄λ‘ μ μ₯ν©λλ€. ASCII(λ―Έκ΅ μ 보 κ΅ν νμ€ λΆνΈ)λ μ»΄ν¨ν°μμ ν μ€νΈλ₯Ό νννκΈ° μν νμ€ μΈμ½λ© λ°©μ μ€ νλμ λλ€. ASCII μ½λνλ κ° λ¬Έμλ₯Ό 7λΉνΈ μ΄μ§μλ‘ ννν©λλ€. μ΄μ§μλ 0κ³Ό 1λ‘ μ΄λ£¨μ΄μ§ λΉνΈ(bit) μ΄μ λλ€. κ° λ¬Έμμ λν΄ κ³ μ ν 7λΉνΈ μ΄μ§μ μ½λκ° ν λΉλμ΄ μμ΅λλ€.
μλ₯Ό λ€μ΄, λλ¬Έμ 'A'μ ASCII μ½λλ 65μ΄λ©°, μ΄λ μ΄μ§μλ‘λ 01000001λ‘ ννλ©λλ€. λ°λΌμ μ»΄ν¨ν°λ λ¬Έμ 'A'λ₯Ό μ΄μ§μ 01000001λ‘ μ μ₯ν©λλ€. μ΄μ κ°μ λ°©μμΌλ‘ ASCII μ½λνλ₯Ό μ¬μ©νμ¬ ν μ€νΈμ κ° λ¬Έμλ₯Ό μ»΄ν¨ν°μμ μ μ₯νκ³ μ²λ¦¬ν μ μμ΅λλ€.
// μμ μ½λ: char νμ
νμ©
public class CharExample {
public static void main(String[] args) {
char ch = 'A'; // char λ³μ chλ₯Ό μ μΈνκ³ 'A'λ₯Ό ν λΉ
System.out.println("λ¬Έμ: " + ch); // chμ μ μ₯λ λ¬Έμ μΆλ ₯
// μ λμ½λ κ° νμΈ
int unicodeValue = (int) ch; // chμ μ λμ½λ κ°μ intλ‘ λ³ννμ¬ unicodeValueμ μ μ₯
System.out.println("μ λμ½λ κ°: " + unicodeValue); // μ λμ½λ κ° μΆλ ₯
}
}
4. String vs. char νμ λΉκ΅π
- String (λ¬Έμμ΄):
- μ₯μ :
- μ¬λ¬ λ¬Έμλ₯Ό ν λ²μ μ²λ¦¬ν μ μμ΄ λ¬Έμμ΄μ λ€λ£¨λ λ° νΈλ¦¬ν©λλ€.
- λ¬Έμμ΄ κ²°ν©, λΆν , κ²μ λ± λ€μν λ¬Έμμ΄ μ‘°μ κΈ°λ₯μ μ 곡ν©λλ€.
- λ¨μ :
- λΆλ³(immutable)νλ―λ‘ λ¬Έμμ΄μ μμ ν λλ§λ€ μλ‘μ΄ κ°μ²΄λ₯Ό μμ±νκ³ κΈ°μ‘΄ κ°μ²΄λ κ°λΉμ§ 컬λ μ μ λμμ΄ λ©λλ€.
- λ¬Έμμ΄ μ²λ¦¬μ νμν μΆκ° λ©λͺ¨λ¦¬ λ° μ°μ° λΉμ©μ΄ λ°μν μ μμ΅λλ€.
- μ₯μ :
- char (λ¬Έμ):
- μ₯μ :
- λ¨μΌ λ¬Έμλ₯Ό μ μ₯νλ λ° ν¨μ¨μ μ λλ€.
- λΆλ³ νμ μ΄ μλλ―λ‘ νμν κ²½μ° λ¬Έμλ₯Ό μ§μ μμ ν μ μμ΅λλ€.
- λ¨μ :
- λ¨μΌ λ¬Έμλ§ μ²λ¦¬ν μ μμΌλ―λ‘ μ¬λ¬ λ¬Έμλ₯Ό μ²λ¦¬νκΈ° μν΄μλ λ°λ³΅λ¬Έ λ±μ μ¬μ©νμ¬μΌ ν©λλ€.
- λ¬Έμμ΄ μ‘°μ κΈ°λ₯μ΄ μ νμ μ΄λ©°, 볡μ‘ν λ¬Έμμ΄ μ²λ¦¬μλ μ ν©νμ§ μμ΅λλ€.
- μ₯μ :
- μ¬μ© μ¬λ‘μ μμ μ½λ
- String μ¬μ© μ¬λ‘ :
- λ¬Έμμ΄μ μ μ₯νκ³ μ²λ¦¬ν΄μΌ ν λ
- λ¬Έμμ΄μ μ‘°μ λ° κ²μμ΄ νμν κ²½μ°
- char μ¬μ© μ¬λ‘:
- λ¨μΌ λ¬Έμλ₯Ό μ μ₯νκ³ μ²λ¦¬ν΄μΌ ν λ
- λ¬Έμμ΄λ³΄λ€ κ°λ¨ν λ¬Έμ μ²λ¦¬κ° νμν κ²½μ°
- String μ¬μ© μ¬λ‘ :
// String μ¬μ© μμ
String str = "Hello, World!";
System.out.println("λ¬Έμμ΄ κΈΈμ΄: " + str.length()); // λ¬Έμμ΄ κΈΈμ΄ μΆλ ₯
System.out.println("첫 λ²μ§Έ λ¬Έμ: " + str.charAt(0)); // 첫 λ²μ§Έ λ¬Έμ μΆλ ₯
// char μ¬μ© μμ
char ch = 'A';
System.out.println("λ¬Έμ: " + ch); // λ¬Έμ μΆλ ₯
System.out.println("λ¬Έμ μ λμ½λ κ°: " + (int) ch); // λ¬Έμμ μ λμ½λ κ° μΆλ ₯
5. ν΅μ¬ λ΄μ©π
'Language > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java]μλ°μμμ ν λ³ν: μλ λ³νκ³Ό κ°μ λ³ν (0) | 2024.04.25 |
---|---|
[Java]μλ° λ Όλ¦¬ νμ (0) | 2024.04.23 |
[Java]μλ° μ€μ νμ (0) | 2024.04.21 |
[Java]μλ° μ μ νμ (0) | 2024.04.20 |
[Java]μλ° λ³μ: λ°μ΄ν° μ μ₯κ³Ό κ΄λ¦¬λ₯Ό μν κΈ°μ΄ μ΄ν΄ (0) | 2024.04.19 |