변수와 출력

zooyeong·2023년 2월 4일

1주차

목록 보기
2/5
post-thumbnail

📌변수 선언하기

자바에서 변수를 선언하려면 초기화를 해주어야 한다.


우선 정수형 타입의 변수를 선언해보겠다.

int hour;

변수 hour를 선언했다. 초기화는 되지 않은 상태다.


이번엔 변수 hour에 값을 저장해보겠다.

hour = 12;

12라는 값이 변수 hour에 초기화되었다.


초기값은 변수를 선언함과 동시에 줄 수도 있다.

int hour = 12;

📌데이터 타입

데이터의 기본 타입은 정수, 실수, 문자, 논리 리터럴을 직접 저장하는 타입이다.

메모리의 최소 기억 단위인 bit가 모여 byte를 형성한다.

💡8bit = 1byte


값의 종류기본 타입메모리 사용 크기저장되는 값의 범위
정수byte1byte8bit27 ~ 27-1(-128~127)
char2byte16bit0 ~ 216-1
short2byte16bit-215 ~ 215-1 (-32,768~32,767)
int4byte32bit-231 ~ 231-1 (-2,147,483,648~2,147,483,647)
long8byte64bit-263 ~ 263-1
실수float4byte32bit(+/-)1.4E-45 ~ (+/-)3.4E38
double8byte64bit(+/-)4.9E-324 ~ (+/-)1.7E308
논리boolean1byte8bittrue, false

✅ 정수형의 기본 디폴트 값은 int이다!

int value1 = 123; //10진수 (99.7)
int value2 = 0207; //앞에 0이 붙이면 8진수 (0.1)
int value3 = 0b0101; //앞에 0b가 붙이면 2진수 (0.1)
int value4 = 0xB; //앞에 0x가 붙으면 16진수 (0.1)

System.out.println(value1); //123
System.out.println(value2); //0208
System.out.println(value3); //123
System.out.println(value4); //0208

byte bvalue1 = 0;
byte bvalue2 = 127;
byte bvalue3 = 128;
//byte타입 표현 범위 : -128~127 이므로 bvalue3은 컴파일에러 발생!
		
long lvalue1 = 10;
long lvalue2 = 3000L; //long 뒤에 L이 붙으면 long타입 숫자

✅ char 타입은 문자리터럴을 저장하지만 사실 정수형 타입이다!

char chvalue1 = '문';
char chvalue2 = 'A';
char chvalue3 = 75;
char chvalue4 = '\u0039'; //16진수
char chvalue5 = 65;
		
System.out.println(chvalue1); //문
System.out.println(chvalue2); //A
System.out.println(chvalue3); //K 유니코드:75
System.out.println(chvalue4); //9
System.out.println(chvalue5+5); //70

✅ 실수형의 기본 디폴트 값은 double이다!

double dvalue1 = 1.23; //실수형 8byte
float fvalue1 = 1.23f; //실수형 4byte 뒤에 f가 붙으면 float형
//      4byte = 8byte
double dvalue2 = 0.1234567890123456789;
float fvalue2 = 0.1234567890123456789f;
		
System.out.println(dvalue1); //1.23
System.out.println(fvalue1); //1.23
System.out.println(dvalue2); //0.12345678901234568
System.out.println(fvalue2); //0.12345679	

✅ 문자열은 큰따옴표(")로 저장한다! ( char은 작은따옴표(') )

String str1 = "A";
String str2 = "ABCD";
String str3 = "문자열 저장은 String";
		
System.out.println(str1); //A
System.out.println(str2); //ABCD
System.out.println(str3); //문자열 저장은 String

📌출력

int p1 = 100;
double p2 = 10.99;
boolean p3 = true;
char p4 = 'T';
String p5 = "입니다";
String p6 = "200";

System.out.println(p1+p2); //100+10.99
System.out.println(100+10.99); //정수형+실수형=실수형(형태가 큰 것으로 변환)
System.out.println(p2);
System.out.println(p3);
System.out.println(p4+5); //'T'+5=89 ('T'=84)
						  //정수형(문자)+정수형=정수형
						  //char+int=int
System.out.println(p5+10); //"입니다" + 10
System.out.println(p1+p5); //100 + "입니다"
//정수형 + 문자열 = 문자열
System.out.println(p1+p6); //100 + "200" = 100200
//정수형 + 문자열 = 문자열
System.out.println(p3+p5); //true + "입니다"
//논리형 + 문자열 = 문자열
System.out.println(p1+p2+p6); //110.99200
// 110.99+"200" -> 문자열
System.out.println(p6+p2+p1); //20010.99100
// "20010.99" + 100 -> p6+p2에서 이미 문자열

💡오늘의 결론 : 문자열을 만나면 다 문자열화 된다고 생각하자 !!!


(교재 : 이것이 자바다/저자 신용권)

profile
Have a good day ⌯’▾’⌯

0개의 댓글