1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | class Casting { public static void main(String[] args) { //형변환, Type Casting // - A라는 자료형을 B라는 자료형으로 볗놘하는 작업 // - 숫자형 끼리만 가능 () int a = 10; int b; //공간 = 값 b = a; //a가 가지고 있는 값을 b에 넣어라(복사해서)) //1. 안시적인 형변환 // - 큰형 = 작은형; //com:원고지 1칸->2칸에 복사 □ -> □□ // - 100% 안전한 작업 //2. 명시적인 형변환 // - 작은형 = 큰형; // 원고지 2칸->1칸에 복사 □□ -> □ // - 불안전(경우에 따라.. 성공, 실패) //3. 형변환 연산자 // - () //예제) //안시적인 형변환 byte b1; //1byte short s1; //2byte b1 = (byte)-127; //원본(풀이:오른쪽에 있는 int를 byte로 바꿔주세요) //큰형 = 작은형 //short = byte //int = short //long = byte //s1 = b1; s1 = (short)b1; //권장, 명시적 (생략가능한 표현 '(shrot)') System.out.println(s1); //명시적인 형변환 byte b2; short s2; s2 = 1000; //원본 //작은형 = 큰형 b2 = (byte)s2; //'(byte)'생략하면 안됨**** System.out.println(b2); //복사본 //예제) 은행잔고와 에러 int money = 200000000; short money2; money2 = (short)money; System.out.println(money2); //정수 -> 정수 //실수 -> 실수 float f1; double d1; d1 = 3.1245; f1 = (float)d1; System.out.println(f1); //크로스 //정수 -> 실수 : 3 > 3.0 //실수 -> 정수 : 3.5 -> 3 (남는 소수이하 (0.5) 버림) //실수는 정수보다 크다 *** //byte < short < int < long < float < double // 1 2 4 8 4 8 byte int a3 = 3; double b3; // b = (double)a; b3 = a3; System.out.println(b3); int a4; double b4; b4 = 3.12345; //정수 = 실수 a4 = (int)b4; System.out.println(a4); //숫자형 나머지.. // - char형 // A - 65, B-66, C-67 ***외워두기 // A ~ Z : 65~96 (+25) 대 ** // a ~ z : 97~122(+25) 소 ** // 0 ~ 9 : 48~57 (+9) 숫자 ** // 가 ~ 힝 : char c1 = 'A'; //A자리에 '힝' '9' 대입해보기 int code1; code1 = (short)c1; //풀이: A의 코드값을 int 자리에 넣어라 System.out.println(code1); System.out.println((char)66); //풀이:문자코드값 66에 해당하는 글자를 만들어내라 //사용자에게 영소문자 입력? -유효성검사 char c2 = 'h'; //h의 코드값을 찾아서 범위 안에 있으면 오키 int code2 = (int)c2; System.out.println(code2); //'h' ->104 System.out.println(code2 >= 97 && code2 <=122); //true } } | cs |
'WEB > JAVA' 카테고리의 다른 글
SCANNER (0) | 2015.05.21 |
---|---|
OUTPUT(출력) (0) | 2015.05.21 |
ESCAPE (0) | 2015.05.21 |
VARIBALE(변수) (0) | 2015.05.21 |
데이터타입 (0) | 2015.05.21 |