<이공계전문기술연수> 5. Java 변수(2) 기본타입

2019. 8. 5. 01:07· 이공계전문기술연수/Java

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)로 변환되어 저장된다.

 

 

 

0사진 출처 -  asciicharstable

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
'이공계전문기술연수/Java' 카테고리의 다른 글
  • < 이공계전문기술연수> 7. Java 변수와 시스템 입출력 / Scanner
  • < 이공계전문기술연수> 6. Java 변수(3) 타입변환
  • <이공계전문기술연수> 4. Java 변수(variable)
  • <이공계전문기술연수> 3. Java 프로젝트 / 패키지 / 클래스 생성
임쟌
임쟌
임쟌
Jian's Blog
임쟌
전체
오늘
어제

공지사항

  • [자기소개]
  • 쟌's Blog (227)
    • Language (32)
      • Python (8)
      • Go (24)
      • Java (0)
    • Framework (10)
      • Django (9)
      • Gin (1)
      • Spring boot (0)
      • Fiber (0)
    • Database (10)
      • PostgreSQL (8)
      • MySQL (0)
      • Redis (2)
    • Server (51)
      • Linux (16)
      • Git (12)
      • Oracle Cloud Infrastructure (13)
      • Mac (4)
      • Docker (4)
      • RabbitMQ (0)
      • ETC (2)
    • Operating System (0)
      • OS (0)
    • Algorithm (22)
      • Go (22)
      • Python (0)
    • Exam Certification (4)
    • Daily Life (27)
      • Review (21)
      • Diary (6)
    • 이공계전문기술연수 (71)
      • Java (17)
      • Database (8)
      • HTML | CSS (13)
      • JavaScript | jQuery (6)
      • Servlet | JSP (16)
      • Spring Framework (11)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
임쟌
<이공계전문기술연수> 5. Java 변수(2) 기본타입
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.