π μμλ?
: λ¨ ν λ²λ§ μ μ₯ν μ μλ λ©λͺ¨λ¦¬λ₯Ό μλ―Ένλ€.
π μμ μ μΈ λ°©λ²
final int AGE;
π‘ μμ μ΄κΈ°ν μ΄ν λ€λ₯Έ κ° λμ λΆκ°
π‘ μμλ κ΄λ‘μ μΌλ‘ λλ¬Έμλ‘ νκΈ°
package example.variable;
public class Variable {
public void testFinal() {
//μμν
μ€νΈ
int size; //λ³μ
final int SIZE; //μμ
size = 10;
SIZE = 10;
System.out.println("=== κ° λ³κ²½ μ ===");
System.out.println("size : " + size);
System.out.println("SIZE : " + SIZE);
//λ³μμ κ° λ³κ²½
size = 20;
//SIZE = 20; //μμλ μ΄κΈ°ν μ΄ν λ€λ₯Έ λ°μ΄ν° λμ
λΆκ°
System.out.println("=== κ° λ³κ²½ ν ===");
System.out.println("size : " + size);
System.out.println("SIZE : " + SIZE);
}
}
package example.variable;
public class Run {
public static void main(String[] args) {
Variable var = new Variable();
var.testFinal();
}
}
//=== κ° λ³κ²½ μ ===
// : 10
//SIZE : 10
//=== κ° λ³κ²½ ν ===
//size : 20
//SIZE : 10
π λ°μ΄ν° μ€λ²νλ‘μ°
πΉ byteν : -128 ~ 127 ννν μ μμ
π‘ λμ§νΈκ³΅ν μ§μ λ€μ λ μ¬λ¦¬κΈ°!
1byte = 8bit = 2^8 -> 256κ°μ§ νν κ°λ₯
맨 μ²μ λΉνΈλ‘ λΆνΈνν(0:μμ, 1:μμ)μ νκ³ λλ¨Έμ§ 7λΉνΈλ‘ μλ₯Ό νννλκΉ
00000000~01111111 : 0λΆν° 127
10000000~11111111 : -128λΆν° -1
2μ보μλ‘ μμ νν λ°©λ² : 0κ³Ό 1μ λ€μ§κ³ +1μ νλ€.
package example.variable;
public class Variable {
public void testOverflow() {
//λ°μ΄ν° μ€λ²νλ‘μ° ν
μ€νΈ
System.out.println("byteμ μ΅λκ° : " + Byte.MAX_VALUE);
System.out.println("byteμ μ΅μκ° : " + Byte.MIN_VALUE);
//byte bnum = 128; //μ μ₯ κ°λ₯ λ²μλ₯Ό λ²μ΄λλ―λ‘ μλ¬ λ°μ
byte bnum = 127;
bnum += 1;
System.out.println("byteμ μ΅λκ°+1 : " + bnum);
bnum = -128;
bnum -= 1;
System.out.println("byteμ μ΅μκ°-1 : " + bnum);
int num1 = 100000;
int num2 = 30000;
//intμ μ μ₯ κ°λ₯ λ²μλ μ½ 21μ΅μ΄λ―λ‘ 30μ΅μ΄λΌλ κ°μ λμ
νλ©΄ μ€λ²νλ‘μ° λ°μ
int result1 = num1*num2;
System.out.println("κ³μ° κ²°κ³Ό(μ€λ²νλ‘μ°) : " + result1);
long result2 = (long)num1*num2;
System.out.println("κ³μ° κ²°κ³Ό : " + result2);
}
}
package example.variable;
public class Run {
public static void main(String[] args) {
Variable var = new Variable();
var.testOverflow();
}
}
//byteμ μ΅λκ° : 127
//byteμ μ΅μκ° : -128
//byteμ μ΅λκ°+1 : -128
//byteμ μ΅μκ°-1 : 127
//κ³μ° κ²°κ³Ό(μ€λ²νλ‘μ°) : -1294967296
//κ³μ° κ²°κ³Ό : 3000000000
π νλ³ν(casting)
: κ°μ μλ£νμ λ°κΎΈλ κ² (boolean μ μΈ)
πΉ μ»΄ν¨ν°μ κ° μ²λ¦¬ μμΉ
1. κ°μ μ’ λ₯ μλ£νλ§ λμ κ°λ₯
2. κ°μ μ’ λ₯ μλ£νλ§ κ³μ° κ°λ₯
3. κ³μ°μ κ²°κ³Όλ κ°μ μ’ λ₯μ κ°μ΄ λμμΌ ν¨
-> μ΄λ° μμΉμ΄ μ§μΌμ§μ§ μμ κ²½μ°μ ν λ³ν νμ!
π μλ νλ³ν
: μ»΄νμΌλ¬κ° μλμΌλ‘ κ°μ λ²μκ° μμ μλ£νμ κ°μ λ²μκ° ν° μλ£νμΌλ‘ λ³ν
π‘ μ μν longν(8byte)μ μ€μν floatν(4byte)μΌλ‘ μλ νλ³ν κ°λ₯ν μ΄μ ?
:μ μμ μ€μμ μ μ₯λ°©λ²μ μ°¨μ΄ λλ¬Έμ΄λ€. floatκ° longλ³΄λ€ νν κ°λ₯ν μμ λ²μκ° λ 컀μ μλ νλ³νμ΄ κ°λ₯νλ€.
π‘ λ¬Έμν charκ° μ΄λ»κ² μ μν intλ‘ μλ νλ³ν κ°λ₯νκ°?
: μλ₯Όλ€μ΄ λ¬ΈμAλ 65κ°μ κ°μ§λ€. λ¬Έμνμ μμλ²μμ κ°μ κ°μ§κΈ° λλ¬Έμ μμλ₯Ό ν¬ν¨νλ intλ‘ μλ νλ³ν κ°λ₯.
π κ°μ νλ³ν (λͺ μμ νλ³ν)
: κ°μ λ²μκ° ν° μλ£νμ κ°μ λ²μκ° μμ μλ£νμΌλ‘ λ³ν
: λ°μ΄ν° μμ€μ΄ λ°μν μ μμ
μμ)
double temp;
int name = (int)temp;
π‘ intμ μ μ₯ κ°λ₯ λ²μλ μ½ 21μ΅ 4byte=32bit=2^32=μ½ 21μ΅
package example.variable;
public class Variable {
public void testCasting() {
//νλ³ν ν
μ€νΈ
boolean bool = true;
//bool = 1; //νλ³ν λΆκ°
//char -> int : μλνλ³ν
int num = 'A';
System.out.println("num : " + num);
//charμ μ μκ° μ μ₯ κ°λ₯(μ«μμ ν΄λΉνλ μ λμ½λ λ¬Έμ)
char ch = 66;
System.out.println("ch : " + ch);
//int -> char : κ°μ νλ³ν
char ch2 = (char)num;
System.out.println("ch2 : " + ch2);
}
public void testCasting2() {
//intμ longμ μ°μ°
int inum = 4;
long lnum = 8L;
//1. int κ²°κ³Ό
int isum = (int)(inum + lnum);
System.out.println("isum : " + isum);
long lsum = inum + lnum;
System.out.println("lsum : " + lsum);
//byte, shortμ μ°μ° κ²°κ³Ό : int
byte bnum = 1;
short snum = 2;
int sum1 = bnum + snum;
System.out.println("sum1 : " + sum1);
//byte or shortμ κ²°κ³Όλ₯Ό μ»κΈ° μν΄ κ°μ νλ³ν
short sum2 = (short)(bnum + snum);
System.out.println("sum2 : " + sum2);
}
public void testDataLoss() {
//λ°μ΄ν° μμ€ ν
μ€νΈ
//μ μ -> μ€μ
long lnum = 100;
float fnum = lnum;
System.out.println("fnum : " + fnum);
//μ€μ -> μ μ
//μμμ μ΄νλ₯Ό μ μνκΈ° λλ¬Έμ λ°μ΄ν° μμ€
double dnum = 10.5;
int inum = (int)dnum;
System.out.println("inum : " + inum);
//κ°μ νλ³νμΌλ‘ μΈν΄ λ°μ΄ν°μμ€ λ°μ
int num = 200;
System.out.println("num : " + num);
byte bnum = (byte)num;
System.out.println("bnum : " + bnum);
}
}
package example.variable;
public class Run {
public static void main(String[] args) {
Variable var = new Variable();
var.testCasting();
var.testCasting2();
var.testDataLoss();
}
}
//num : 65
//ch : B
//ch2 : A
//isum : 12
//lsum : 12
//sum1 : 3
//sum2 : 3
//fnum : 100.0
//inum : 10
//num : 200
//bnum : -56
'Dev > Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[JAVAκΈ°μ΄(5)] μ°μ°μ (0) | 2022.05.07 |
---|---|
[JAVAκΈ°μ΄(4)] μ€μ΅(3),(4) (0) | 2022.05.07 |
[JAVAκΈ°μ΄(2)] μ€μ΅(1), (2), μΆλ ₯λ©μλ (0) | 2022.05.07 |
[JAVAκΈ°μ΄(1)] λ³μ, μλ£ν, 리ν°λ΄, μ€μ΅ (0) | 2022.03.30 |
[PHP] κ°λ μ 리...php.net μ°Έκ³ νκΈ° (0) | 2022.03.15 |