Java에서 정수, 실수, 논리 값을 저장할 수 있는 기본 타입은 총 8개이다.
정수를 저장할 수 있는 타입에는 byte, char, int, long, char(문자형) 이 있고
실수를 저장할 수 있는 타입에는 float, double이 있다.
논리 값을 저장할 수 있는 타입에는 boolean이 있다.
표와 같이 나타낼 수 있고, 메모리 사용 크기도 함께 알아둬야 한다.
저장되는 값의 범위도 생각을 해줘야 된다.
예를 들면 같은 정수이지만 int의 저장되는 값과 long의 저장되는 값의 범위가 다르기 때문이다.
package com.kh.data;
public class DataPrint {
public static void main(String[] args) {
System.out.println(1 + 1);
System.out.println(1.1 + 1.1);
System.out.println('1' + '1');
System.out.println("1" +"1");
System.out.println("Hello" + 'q');
System.out.println("Hello" + 10);
System.out.println("Hello" + 3.14);
System.out.println(10 + "Hello");
System.out.println(10+20+ "Hello");
System.out.println(10+(20+"Hello"));
System.out.println(10+"Hello"+20);
System.out.println('q' + 'q');
System.out.println('q' + 13);
boolean bool = true ;
boolean bool2 = false ;
char ch = 'A';
String str = "Hello Java";
int num = 0;
byte bnum;
short suum;
long lnum;
double dnum = 1.1;
float fnum = 1.23f; // float f write!
int inum = 100;
//int inum = 999900000000; 21억
long iinum = 999900000000l;
float fnum = 486.520f;
double dnum = 567.890123;
char ch = 'A';
String str = "Hello world";
boolean bool = true ;
System.out.println(inum);
System.out.println(iinum);
System.out.println(fnum);
System.out.printf("실수(float) : %.3f\n" , fnum);
System.out.println(dnum);
System.out.println(ch);
System.out.println(str);
System.out.println(bool);
boolean bool = true;
boolean bool = (3>2);
boolean bool = (1==2);
System.out.println(bool);
char k1 = 'a';
char k2 = 97;
char k3 = '\u0061';
System.out.println(k1);
System.out.println(k2);
System.out.println(k3);
}
}
수업시간에 작성한 코드이고, 하나씩 살펴보자.
package com.kh.data;
public class DataPrint {
public static void main(String[] args) {
System.out.println(1 + 1);
System.out.println(1.1 + 1.1);
System.out.println('1' + '1');
System.out.println("1" +"1");
이 부분을 보면
1) system.out.println(1 + 1) ;
2) system.out.println(1.1 + 1.1) ;
3) system.out.println('1' + '1') ;
4) system.out.println("1" + "1") ;
각각의 값을 생각해보자.
1) 정수의 합이다. 따라서 실행 결과 2 가 나온다.
2) 실수의 합이다. 따라서 실행 결과 2.2 가 나온다.
3) 하나의 문자를 작은따옴표(')로 감싼 것을 문자 리터럴이라고 한다.
문자 리터럴은 유니코드(unicode)로 변환되어 저장된다.
chr 입력되어있는 값을 문자 리터럴로 나타내서 숫자로 읽는 것이다.
'1' + '1' 이므로 찾아보면 49라는 Dec로 나온 것을 알 수 있다.
따라서 실행 결과 같은 98이 된다.
4) 큰따옴표(")로 감싼 문자 또는 여러 개의 문자들은 유니코드로 변환되지 않는다.
이것들을 문자열이라고 한다.
String의 타입인데 실행 결과 같은 각각을 하나의 문자로 읽어 11 이 된다.
[Run] -> [Run] 또는 ctrl + F11 결과이다.
문자열 내부에 역슬래시(\)를 이스케이프 문자라고 한다.
예를 들면
*참고 : https://msdn.microsoft.com/ko-kr/library/2yfce773(v=vs.94).aspx
package com.kh.data;
public class DataPrint {
public static void main(String[] args) {
double dnum = 1.1;
float fnum = 1.23f; // float f write!
int inum = 100;
int iinum = 999900000000; 21억
long iiinum = 999900000000l;
float fnum = 486.520f;
double dnum = 567.890123;
char ch = 'A';
String str = "Hello world";
}
}
double dnum = 1.1; 실수를 나타내며
float fnum = 1.23f; 실수를 나타내며 (뒤에 f를 붙여줘야 한다. 대문자 F도 상관없다)
참고로 뒤에 // 이것은 주석을 나타내는 방법이다
둘의 차이점은
float는 4byte 32bit 정밀도(소수점 이하 자리) 7자리
double 8byte 64bit 정밀도(소수점 이하자리) 15자리
int iinum = 999900000000;
long iiinum = 999900000000;
같은 정수이지만 위 int는 오류가 발생한다. 이유는 저장되는 값의 범위를 넘었기 때문이다.
그래서 long을 써줘야 한다. long뒤에는 l을 붙여서 표시를 한다.
package com.kh.data;
public class DataPrint {
public static void main(String[] args) {
boolean bool = true ;
boolean bool2 = false ;
}
}
Java에서 참과 거짓을 의미하는 논리 리터럴로 true와 flase를 사용한다.
논리 리터럴은 1byte 크기의 boolean 타입 변수에 저장할 수 있다.
boolean bool = true;
boolean bool2 = false;
주로 두 가지 상태 값에 따라 조건문과 제어문의 실행 흐름을 변경하는 데 사용한다.
뒷부분에서 조건문과 제어문도 배울 거지만 간단하게 boolean의 사용법을 살펴보면
package com.kh.data;
public class DataPrint {
public static void main(String[] args) {
boolean bool = true;
if(bool){
system.out.println("시작합니다")
}else{
system.out.println("중지합니다")
}
}
}
실행 결과는 bool이라는 변수가 true 이므로
if(bool)의 시작합니다 가 실행된다.
'이공계전문기술연수 > Java' 카테고리의 다른 글
< 이공계전문기술연수> 7. Java 변수와 시스템 입출력 / Scanner (0) | 2019.08.07 |
---|---|
< 이공계전문기술연수> 6. Java 변수(3) 타입변환 (0) | 2019.08.07 |
<이공계전문기술연수> 4. Java 변수(variable) (0) | 2019.08.04 |
<이공계전문기술연수> 3. Java 프로젝트 / 패키지 / 클래스 생성 (0) | 2019.08.04 |
<이공계전문기술연수> 2. Java JDK , eclipse 설치 (0) | 2019.08.01 |