์๋ฃํ(data type)?
๋ฐ์ดํฐ์ ์ข ๋ฅ์ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์๋ก ์ซ์, ๋ฌธ์์ด์ฒ๋ผ ์๋ฃ ํํ๋ก ์ฌ์ฉํ๋ ๋ชจ๋ ๊ฒ
1) ์ซ์
์ ์ : int, long(๋ง์ด ์ฌ์ฉํจ...) / byte, short(์ ์ฌ์ฉ ์ํจ)
์๋ฃํ | ํํ ๋ฒ์ |
int | -2147483648 ~ 2147483647 |
long | -9223372036854775808 ~ 9223372036854775807 |
byte | -128 ~ 127 |
short | -32768 ~ 32767 |
int age = 10;
long countingstar = 8764827384923849L;
// int ์๋ฃํ์ ์ต๋๊ฐ์ธ 2147483647๋ณด๋ค ํฌ๋ฉด L;๋ถ์ฌ์ค์ผ ํ๋ค!! => ์์ผ๋ฉด ์ปดํ์ผ ์ค๋ฅ ๋ฐ์
์ค์ : float, double
์๋ฃํ | ํํ ๋ฒ์ |
float | -3.4 * 10์ 38์น ~ 3.4 * 10์ 38์น |
double | -1.7 * 10์ 308์น ~ 1.7 * 10์ 308์น |
float pi = 3.14F;
double morePi = 3.14159265358979323846;
// ์๋ฐ ์ค์ ๊ธฐ๋ณธ๊ฐ์ double์ด๋ฏ๋ก float ๋ณ์์ ๊ฐ์ ๋์
ํ ๋๋ ์ ๋ฏธ์ฌ๋ก F์๋ฅผ ๊ผญ ๋ถ์ฌ์ค๋ค..
// ์ด๊ฒ ๋ํ ๋๋ฝํ๋ฉด ์ปดํ์ผ ์ค๋ฅ ๋ฐ์!!
8์ง์์ 16์ง์ : int ์๋ฃํฅ์ ์ฌ์ฉ
- 8์ง์ : ์ซ์ 0์ผ๋ก ์์, 0~7๊น์ง๋ฅผ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ํํํ๋ค
- 16์ง์ : ์ซ์ 0๊ณผ ์ํ๋ฒณ x๋ก ์์..., 0~9๊น์ง์ ์ซ์์ A๋ถํฐ F๊น์ง์ ์ํ๋ฒณ์ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ํํํ๋ค
int octal = 023; // ์ญ์ง์ : 19 (2 * 8์ 1์น + 3* 8์ 0์น)
int hex = 0xC3; // ์ญ์ง์ : 195 (12 * 16์ 1์น + 3 * 16์ 0์น)
์ซ์ ์ฐ์ฐ : ์ฌ์น์ฐ์ฐ๊ณผ ๋์ผ
// ๋๋จธ์ง ์ฐ์ฐ์ : %
public class practice {
public static void main(String[] args) {
System.out.println(7%3); // 1
System.out.println(3%7); // 3
}
}
์ฆ๊ฐ ์ฐ์ฐ : ++, -- ๊ธฐํธ๋ฅผ ์ด์ฉํ์ฌ ๊ฐ์ ์ฆ๊ฐ ๋๋ ๊ฐ์ (++, -- ๊ธฐํธ๋ฅผ ์ฆ๊ฐ ์ฐ์ฐ์๋ผ๊ณ ํ๋ค)
int i = 0;
int j = 10;
i ++;
j --;
System.out.println(i); // 1
System.out.println(j); // 9
์ฆ๊ฐ ์ฐ์ฐ์์ ์์น์ ๋ฐ๋ฅธ ๋ณํ..
- i++ : ๊ฐ์ ์ฐธ์กฐํ ํ์ ์ฆ๊ฐ
- ++i : ๊ฐ์ ์ฐธ์กฐํ๊ธฐ ์ ์ ์ฆ๊ฐ
// ํ์น ์ฆ๊ฐ ์ฐ์ฐ์...
int i = 0;
System.out.println(i++); // 0
System.out.println(i); // 1
// ์ ์น ์ฆ๊ฐ ์ฐ์ฐ์...
int i = 0;
System.out.println(++i); // 1
System.out.println(i); // 1
2) bool : ์ฐธ ๋๋ ๊ฑฐ์ง์ ๊ฐ์ ๊ฐ๋ ์๋ฃํ
๋ถ ์ฐ์ฐ : ๋ถ ์๋ฃํ์๋ ๋ถ ์ฐ์ฐ์ ๊ฒฐ๊ด๊ฐ์ ๋์ ํ ์ ์๋ค.
2 > 1 // ์ฐธ
1 == 2 // ๊ฑฐ์ง
3 % 2 == 1 // ์ฐธ
"3".equals("2") // ๊ฑฐ์ง
๋ถ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ ์ฐธ ๋๋ ๊ฑฐ์ง์ด๋ฏ๋ก if ๋ฌธ๊ณผ ๊ฐ์ ์กฐ๊ฑด๋ฌธ์์ ์ฌ์ฉํ๊ฑฐ๋ ๋ถ์๋ฃํ์ ๋์ ํ ์ ์๋ค.
int i = 3;
boolean isOdd = i % 2 == 1;
System.out.println(isOdd); // true
3) ๋ฌธ์ : char ์๋ฃํ์ ์ฌ์ฉํ๋ค(๋ง์ด ์ฌ์ฉํ์ง๋ ์์ง๋ง ๋ฌธ์ฃ๊ฐ์ ํํํ๋ ๋ฐฉ์์ ๋ค์ํ๋ค)
char a1 = 'a'; // ๋ฌธ์๋ก ํํ
char a2 = 97; // ์์คํค์ฝ๋๋ก ํํ
char a3 = '\u0061'; // ์ ๋์ฝ๋๋ก ํํ
System.out.println(a1); // a
System.out.println(a2); // a
System.out.println(a3); // a
4) ๋ฌธ์์ด: String์ ์ฌ์ฉํ๋ค
// ๋ฆฌํฐ๋ด ํ๊ธฐ ๋ฐฉ์ : ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ์๊ณ ๊ณ ์ ๋ ๊ฐ์ ๊ทธ๋๋ก ๋์
ํ๋ ๋ฐฉ๋ฒ
String a = "Happy Java";
String b = "a";
String c = "123";
// new ํค์๋ : ์๋ก์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉ
String a = new String("Happy Java")
String b = new String("a")
String c = new String("123")
์์ ์๋ฃํ : int, long, double, float, boolean, char ์๋ฃํ์ ์์ ์๋ฃํ์ด๋ผ ํ๋ค.. ์ด๋ฌํ ์๋ฃํ๋ค์ new ํค์๋๋ก ๊ฐ์ ์์ฑํ ์ ์๋ค.. !!!!! String์ ๋ฆฌํฐ๋ด ํ๊ธฐ๋ฐฉ์์ ์ฌ์ฉํ ์ ์์ง๋ง ์์ ์๋ฃํ์ ํฌํจ ๋์ง ์๋๋ค!!!! ํน๋ณ ๋์ฐใ กใ ก
boolean result = true;
char a = 'A';
int i = 100000;
// String๋ง ๋๋ค ๊ฐ๋ฅ... ํน๋ณ ๋์ฐ ํ๋์...
String a = "JAVA"
String b = new String("Python")
Wrapper ํด๋์ค : ์์ ์๋ฃํ์ ๋์ํ๋ Wrapper ํด๋์ค๊ฐ ์๋๋ฐ ์ด๋ ์์ ์๋ฃํ์ ๋์ ํ์ฌ ์ฌ์ฉํ ์ ์๋ ์๋ฃํ์ผ๋ก, ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์๊ฒ ํด์ค๋ค.
์์ ์๋ฃํ | Wrapper ํด๋์ค |
int | integer |
long | Long |
double | Double |
float | Float |
boolean | Boolean |
char | Char |
์์ผ๋ก ๊ณต๋ถํ ArrayList, HashMap, HashSet ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ ๋ ์์ ์๋ฃํ ๋์ ๊ทธ์ ๋์ํ๋ Wrapper ํด๋์ค๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค....
=> ๊ฐ ๋์ ๊ฐ์ฒด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ฝ๋๋ฅผ ๊ฐ์ฒด ์ค์ฌ์ผ๋ก ์์ฑํ๋ ๋ฐ ์ ๋ฆฌ!!
=> ๋ฉํฐ ์ค๋ ๋ ํ๊ฒฝ์์ ๋๊ธฐํ๋ฅผ ์ง์ํ๊ธฐ ์ํด์๋ Wrapper ํด๋์ค๋ ๋ฐ๋์ ํ์!!
๋ฌธ์์ด ๋ด์ฅ ๋ฉ์๋ (๋ด์ฅ ๋ฉ์๋: ๋ฌธ์์ด ๊ฐ์ฒด์ ์ํ ํจ์...)
- equals: ๋ฌธ์์ด 2๊ฐ๊ฐ ๊ฐ์์ง๋ฅผ ๋น๊ตํ์ฌ ๊ฒฐ๊ด๊ฐ์ ๋ฆฌํด
// equals
String a = "hello";
String b = "java";
String c = "hello";
System.out.println(a.equals(b)); // false
System.out.println(a.equals(c)); // true
// equals ๋ฉ์๋์ == ์ฐ์ฐ์ ๋น๊ต...
String a = "hello";
String b = new String("hello");
System.out.println(a.equals(b)); // true
System.out.println(a == b)l // false
// ๊ฐ์ ๊ฐ์ง๋ง ==์ 2๊ฐ์ ์๋ฃํ์ด ๊ฐ์ ๊ฐ์ฒด์ธ์ง๋ฅผ ํ๋ณํ ๋ ์ฌ์ฉํ๋
์ฐ์ฐ์์ด์ง๋ง ์๋ก ๋ค๋ฅธ ๊ฐ์ฒด์๋ฏ๋ก false๋ฅผ ๋ฆฌํดํ๋ค...
- IndexOf: ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ด ์์๋๋ ์์น(์ธ๋ฑ์ค ๊ฐ)๋ฅผ ๋ฆฌํด
String a = "Hello Java";
System.out.println(a.indexOf("Java"); // 6
- contains : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ด ํฌํจ๋์ด ์๋์ง ์ฌ๋ถ๋ฅผ ๋ฆฌํด
String a = "Hello Java"
System.out.println(a.contains("Java")); // true
- charAt : ๋ฌธ์์ด์์ ํน์ ์์น์ ๋ฌธ์๋ฅผ ๋ฆฌํด
String a = "Hello Java;
System.out.println(a.charAt(6)); // J
- replaceAll : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ ๋ค๋ฅธ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.replaceAll("Java", "World")); // "Hello World"
- substring : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ ๋ฝ์๋ผ ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.substring(0, 4)); // "Hell
- toUpperCase: ๋ฌธ์์ด์ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ณ๊ฒฝํ ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.toUpperCase()); // "HELLO JAVA"
- split : ๋ฌธ์์ด์ ํน์ ํ ๊ตฌ๋ถ์๋ก ๋๋์ด ๋ฌธ์์ด ๋ฐฐ์ด๋ก ๋ฆฌํด
String a = "a:b:c:d";
String[] result = a.split(":"); // result๋ {"a", "b", "c", "d"}
๋ฌธ์์ด ํฌ๋งคํ : ๋ฌธ์์ด ์์ ์ด๋ค ๊ฐ์ ์ฝ์ ํ๋ ๋ฐฉ๋ฒ (String.format ๋ฉ์๋๋ฅผ ์ฌ์ฉ)
- ์ซ์ ๋ฐ๋ก ๋์ ํ๊ธฐ(%d)
System.out.println(String.format("I eat %d apples.", 3)); // "I eat 3 apples."
// ์ซ์๋ฅผ ๋ฃ๊ณ ์ถ์ ์๋ฆฌ์ %d๋ฅผ ์
๋ ฅ, ์ฝ์
ํ ์ซ์๋ฅผ ๋๋ฒ์งธ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌ
// %d : ๋ฌธ์์ด ํฌ๋งท ์ฝ๋..
- ๋ฌธ์์ด ๋ฐ๋ก ๋์ ํ๊ธฐ(%s)
System.out.println(String.format("I eat %s apples.", "five")); // "I eat five apples."
// %s : ๋ฌธ์์ด์ ๋ฃ๊ณ ์ถ์ ์๋ฆฌ์ ์ฌ์ฉ
- ๋ฌธ์์ด ํฌ๋งท ์ฝ๋์ ์ข ๋ฅ
์ข ๋ฅ | ์ค๋ช |
%s | ๋ฌธ์์ด(String) |
%c | ๋ฌธ์ 1๊ฐ(Character) |
%d | ์ ์(Integer) |
%f | ๋ถ๋ ์์(floating-point) |
%o | 8์ง์ |
%x | 16์ง์ |
%% | ํน์ ๋ฌธ์ % |
%s๋ ์ด๋ค ํํ์ ๊ฐ์ด๋ ๋ณํํ์ฌ ๋ฃ์ ์ ์์ ;;
- %% : ํน์ ๋ฌธ์ %
System.out.println(String.format("Error if %d%%.", 98));
Error is 98%.
- ์ ๋ ฌ๊ณผ ๊ณต๋ฐฑ ํํํ๊ธฐ
System.out.println(String.format("%10s", "hi.")); // " hi."
// %10s : ์ ์ฒด ๊ธธ์ด๊ฐ 10์ธ ๋ฌธ์์ด ๊ณต๊ฐ์์ ๋์
๋๋ ๊ฐ(hi)์ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ์ผ๋ก ์ ๋ ฌํ๊ณ ๋๋จธ์ง๋ ๊ณต๋ฐฑ์ผ๋ก ๋จ๊ฒจ๋๋ผ๋ ์๋ฏธ
- ์์์ ํํํ๊ธฐ
System.out.println(String.format("%.4f", 3.42134234);; // 3.4213
// %.4f : ์์์ ๋ท์งธ ์๋ฆฌ๊น์ง๋ง ๋ํ๋ด๊ณ ์ถ์ดํ ๋ ์ฌ์ฉ...
// ๊ธธ์ด๊ฐ 10์ด๊ณ ์์์ ๋ท์งธ ์๋ฆฌ๊น์ง ํ์ํ๊ณ ์ถ๋ค๋ฉด... %10.4f
- System.out.printf
System.out.printf("I eat %d apples.", 3); // I eat 3 apples.
// System.out.printf ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด String.format ๋ฉ์๋๊ฐ ์์ด๋ ์ฌ์ฉ ๊ฐ๋ฅ!!
5) StringBuffer
: ๋ฌธ์์ด์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ ์๋ฃํ
append : StringBuffer ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ๋ฌธ์์ด์ ์์ฑ
StringBuffer sb = new StringBuffer(); // StringBuffer ๊ฐ์ฒด sb ์์ฑ
sb.append("hello");
sb.append(" ");
sb.append("jump to java");
String result = sb.toString();
System.out.println(result); // "hello jump to java"
++) toString() ๋ฉ์๋ ์ฌ์ฉํ๊ธฐ
String result = "";
result += "hello";
result += " ";
result += "jump to java";
System.out.println(result); // "hello jump to java"
=> ์ฒซ๋ฒ์งธ ๋๋ฒ์จฐ ๊ฒฐ๊ณผ๋ ๊ฐ์ง๋ง ๋ด๋ถ์ ์ผ๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๊ณผ์ ์ ๋ค๋ฅด๋ค..
์ฒซ๋ฒ์งธ๋ StringBuffer ๊ฐ์ฒด๋ฅผ ํ๋ฒ๋ง ์์ฑํ์ง๋ง... ๋๋ฒ์งธ๋ String ์๋ฃํ์ + ์ฐ์ฐ์ด ์์ ๋๋ง๋ค ์๋ก์ด String ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ฏ๋ก ์ด 4๊ฐ์ String ์๋ฃํฅ ๊ฐ์ฒด๊ฐ ๋ง๋ค์ด ์ง๋ค...
=> ๋ฌด์กฐ๊ฑด StringBuffer๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์๊น?
XX ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค... StringBuffer ์๋ฃํ์ String ์๋ฃํ๋ณด๋ค ๋ฌด๊ฑฐ์ด ํธ์ ์ํ๋ค...
new StringBuffer()๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ฉด String ์ ์ฌ์ฉํ ๋๋ณด๋ค ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๋ ๋ง๊ณ ์๋๋ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ฌธ์์ด์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ๋ ์์ ์ด ๋ง์ผ๋ฉด StringBuffer๋ฅผ, ์ ์ผ๋ฉด String์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ฆฌํ๋ค
insert : ํน์ ์์น์ ์ํ๋ ๋ฌธ์์ด์ ์ฝ์
StringBuffer sb = new StringBuffer();
sb.append("jump to java");
sb.insert(0, "hello");
System.out.println(sb. toString()); // hello jump to java
- ๋ฌธ์ ๋ต-
1. ((a+b+c)/3), 70
2.
public class sol2 {
public static void main(String[] args) {
System.out.println(13 % 2);
}
}
3. pin.substring(0, 6);
4. pin.charAt(7));
5. a.replaceAll(":", "#")
'java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
---|---|
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ ์์ํ๊ธฐ ๐ข (1) | 2023.09.05 |
java ๊ธฐ์ด(ํจํค์ง์ API ๋ฌธ์, java.lang ํจํค์ง) (0) | 2023.04.13 |
java ๊ธฐ์ด(ํจํค์ง, ์์ ํด๋์ค์ ๋ถ๋ชจ ์์ฑ์, ์์๊ณผ ์ ๊ทผ์ ์ด (0) | 2023.04.07 |