이안의 평일코딩

JAVA의 정석 2일차 - 자바데이터형 본문

Back-end/Java

JAVA의 정석 2일차 - 자바데이터형

이안92 2020. 6. 17. 09:57
반응형

2020.06.16(화)

1.데이터형 (자료형)

 

  1byte (8bit) 2byte (16bit) 4byte (32bit) 8byte (64bit)
정수형 byte
-128~127
short
(C언어 호환)
-32,768~32,767
int
-21억4천~21억4천
long
실수형     float double
문자형   char
0~65535
   
논리형 boolean
(true/false)
     


   정수, 실수, 문자, 논리
  
   총알 ==> x, y ==> 좌표 (int)
   키보드 값 ==> char
  
   총점수를 누적 ==> long
   점수에 대한 평균 ==> double
  
   게임 종료 여부 확인 ==> boolean
   ===========================
  

2. 데이터 저장 방법
   - 한개 저장

=> 변경해서 사용하는 데이터 : 변수 데이터형 변수명
   변경하지 않는 데이터 : 상수 final 데이터형 변수명
   - 여러개 저장 => 같은 유형 (배열)
   - 여러개 저장 => 다른 유형 (클래스) => 사용자 정의 데이터형
  

3. 메모리를 만드는 방식 => 변수선언
    데이터형 변수명;
   예) 정수
   int  ==> int a;
   long ==> long a;
   실수
   double ==> double d;
   문자
   char ==> char c;
   논리
   boolean ==> boolean b;
  

4.변수에 대한 초기값 (출력할 때 변경할거라서 아무 값이나 줘도 됨)
   int a=0;
   long a=0L;
   double a=0.0
   boolean b=false; (true나 둘 중 하나)
   char c='A' (문자 아무거나)
  

5. 변수값을 변경하는 방법
   int a=10;
   a=100;
   a=200;
   a=300;
   최종적으로 들어가는 값은 300.
  

6. 변수와 변수의 교환
   => temp라는 임시변수가 필요하다
  
7. 25page참조

   변수 : 한개의 데이터를 저장하는 메모리 공간의 별칭
   변수명을 만들때 사용하는 방법 (식별자)
  1) 알파벳이나 한글로 시작한다
   알파벳은 반드시 대소문자 구분
   a != A (a와 A는 다르다)
  2) 숫자 사용이 가능 (단 앞에는 사용할 수 없다)
   a1, a2 하지만 2a (error)
  3) 특수문자 사용이 가능 ( _ , $ )
   _ => 임시파일, 단어가 여러개 일 경우에 주로 사용
   file_size , file_name...
  4) 키워드(자바에서 사용중인 단어)는 사용할 수 없다
   int => int1 
  5) 변수의 길이는 15자 이내로 한다 (3~7자리 회사에서 보통 사용)
  6) 공백은 허용하지 않는다

 

8.자바변수초기화방법

   변수 ==> 초기화 (값을 지정하는 것)
  1) 직접 처리
    int a = 100;
  2) 선언 ==> 키보드에서 받아서 저장
  3) 임의의 수를 저장 (랜덤) ==> 게임, 로또
  4) 입력창을 만들어서 값을 받는 방식 
 
  - 선언 동시에 초기값 부여 => 관리자용
  int a = 100;
  - 선언하고 나중에 초기값을 부여 => 사용자용 (회원가입 할 때는 미리 아이디 비밀번호 입력 안되어있음)
  int a;
  a = 200;

 

9. 자바에서 사용하는 데이터형(자료형) => 메모리의 크기 지정
컴퓨터는 0,1 => bit 

 

   1) 정수
    (1) byte (0,1을 8개를 저장하는 공간) => 8bit(1byte)
     11111111 -> -128
     = 음수
     01111111 -> 127   =====> -128~127 저장
     = 양수
   =====> 파일읽기, 파일쓰기, 파일업로드, 파일다운로드, 네트워크전송

www.google.com/search?q=%EC%9E%90%EB%B0%94&oq=%EC%9E%90%EB%B0%94&aqs=chrome..69i57j0l7.2057j0j7&sourceid=chrome&ie=UTF-8

    (2) short (0,1을 => 16개를 저장하는 공간) ==> 16bit (2byte)
     1111 1111 1111 1111 => -32768
     0111 1111 1111 1111 => 32767
    =====> C언어와 호환성 (사용빈도가 없다)
    (3) int (평상시에 사용하는 모든 정수는 컴퓨터에서 int로 인식) => default
     (0,1 => 32개를 저장하는 공간)
     1111 1111 1111 1111 1111 1111 1111 11111
     0111 1111 1111 1111 1111 1111 1111 11111
  =====> 자바 코딩의 정수는 대부분 사용 
    (4) long (0,1 => 64개의 저장공간) : 빅데이터, 금융권프로그램, 주식...
  
   국어점수 : byte, short, int, long ==> int 
   수학점수 : byte, short, int, long ==> int 
   영어점수 : byte, short, int, long ==> int 
   총점 : (300) byte(X), short, int, long ==> int
   우리나라의 연봉 : 스포츠선수 21억4천넘으니까 long
  
    2) 실수
   = 4byte ==> 소수점 (6자리) ==> float
   = 8byte ==> 소수점 (15자리) ==> double ==> default
   ***문제점
   float f=10.5 (x) => float f=10.5f
   저장공간 => 첨부할 값
   =========> 저장공간이 첨부할 값보다 크거나 같다


    3) 문자
   = char (0,1 => 16bit) : 음수는 없이 양수만 ==> 0~65535
  * 문자마다 고유의 번호
  'A' ==> 65
  'a' ==> 97
  '0' ==> 49
  

    4) 논리
   = true/false저장 ==> boolean (1byte)
   ===> login, idcheck
  
   * 메모리에 저장하는 크기
   byte < short < int < long < float < double
 ======================================
   int => 10, 20
   long => 10L, 20L
  
   float => 10.5f, 10.5F
   double => 10.5
  
   char
  
   long => 0, 1
   float => 1.000000 1.00001
  
   정수 < 실수
   =======================================================
  

10. 변수 선언 / 초기화
   1) 변수선언 ===> 변수는 반드시 => 초기값을 설정
    ====== 저장해야되는 데이터가 존재 
    형식)
    데이터형 변수명;
   
    점수를 저장 ==> int jumsu;
    jumsu = 100; // 키보드로 입력을 받거나, 파일에 있는 데이터 읽기
   
    int jumsu = 100; // 직접 입력
   
    여러개
    int a=0;
    int b=0;
    int c=0;
    ========
    int a,b,c;
    int a=0,b=0,c=0;

   2) 변수에 초기화
    (1) 정수형
    byte ==> 0
    short ==> 0
    int ==> 0
    long ==> 0L
    (2) 실수형
    float ==> 0.0F(f)
    double ==> 0.0D(d) => d(D)는 생략이 가능
    (3) 문자형 ==> 'A' ==> ''A"(error)
    (4) 논리형
    boolean ==> false/true
    *** 모든 변수는 초기화를 해야 한다

  
  문자열 결합

  7+7+"1"+7+7 => 14+"1" => "141"+7 "1417" "14177"
  "총점:78"+85+96 ==> "총점:788596"

 

  char는 문자, 정수 취급한다

   long = int
    8      4
   int = long
    4      8 => ERROR
   double = int, long, float
    8        4    8     4
   int = double(x)
    4      8
   예외 ==> char = int
            2     4

 

* byte < char < int < long < float < double

반응형
Comments