Ch.2 변수와 타입

2021. 3. 8. 20:14Java

728x90

2.1 변수

2.1.1 변수란?

  • 변수란, 하나의 값을 저장할 수 있는 메모리 공간이다.

2.1.2 변수선언

  • 타입 + 변수이름;'
  • 한꺼번에 여러개 선언가능 int x,y,z;
  • 첫문자는 소문자로 시작하되, 다른단어가 붙을 경우 첫 글자는 대문자 
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
public class VariableTest1 {
    
    static int speed;
    static double speed2;
    
    //main이 없으면 직접실행 불가 
    public static void main(String[] args) {
        
        System.out.println("speed=" +speed);
        System.out.println("speed2=" +speed2);
        
        
        
        System.out.println("변수는?"); /*syso ctrl+spac*/
        System.out.println("기억장소이름이다");
        //10 저장
        //1.변수선언
        int a;
        //2. 변수에 값을 저장
        a=10;
        //3. 값 출력
        System.out.println(a);
        System.out.println(a);
        System.out.println(a);
        //4. 선언과 할당을 한번에
        int score=100// = 대입연산자 
        score = score + 10;
        score += 10// += 복합대입연산자
        // 문자+숫자 = 문자(연결연산자)
        System.out.println("점수는?" +score);
        
        // 초기화하고 사용한다
        // 지역변수는 초기화해야 사용가능
        int value = 0;
        int result = value + 10;
        System.out.println(result);
    
    }
 
}
cs

 

2.1.3 변수의 사용

  • 리터럴
    • 소스코드내에서 직접 입력된 값.
  • 변수선언과 동시에 초기화 할 수 있음.
  • 변수는 초기화 하여야 읽을 수 있음.

2.1.4 변수의 사용범위

  • {}내에서 선언되고 선언된 블록내에서만 사용가능 

2.2 데이터 타입

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
public static void main(String[] args) {
        //자바의 기본타입 8가지  정수5 실수2 논리1
        //data type (데이터 성격)
        //1.정수 (byte(1) < short(2), char(2) < int(4) < long(8))
        //2.실수 (float(4) < double(8) )
        //3.논리 
        byte b = 127;
        short s = 32767;
        char c = 65535;
        int i = 2147483647;
        long lo = 2147483648L;  //기본적으로 int로인식 l 필요
        float f = 3.14f; 
        double d = 3.14;
        boolean bo = 10>20// ture or false;
        System.out.println(bo);
        i ++;
        System.out.println(i);
        
        // data 형변환 : 자동, 강제(명시적)
        //1.자동 (큰방에 작은 값)
        byte aa = 127;
        int ii = aa;
        System.out.println(ii);
        short ss = 100;
        int iii = ss;
        double dd = iii;
        
        System.out.println(iii);
        System.out.println(dd);
        char cc = 'A'//1000001
        ii = cc;
        System.out.println(ii);
        cc = 'a'//1100001
        ii = cc;
        System.out.println(ii);
        
        
        //2.강제형변환 : 큰값 -> 작은방
        byte b2 = 100;
        int i1 = 200;
        
        //i1=b2; (자동)
        
        b2 = (byte)i1;
        System.out.println(b2); // 범위를 벗어나면 값손실
        
        char c2;
        c2 = (char)49;
        System.out.println(c2);
        System.out.println((int)'A');
    }
 
}
 
cs

 

  • 정수 타입: byte(1) < short(2), char(2) < int(4) < long(8)
    • char -> 유니코드
  • 실수 타입: float(4) < double(8)
  • 논리 타입: boolean(1)

 

  • String 은 기본 타입이 아니다. String은 클래스 타입 이고, String 변수는 참조변수이다.

2.3 타입변환

  • 자동 타입변환 : 작은 크기 타입 -> 큰 크기 타입
  • 강제 타입변환(Casting) : (작은 타입) 큰 크기 타입 -> 작은 크기 타입
    • 명시적으로 타입을 나타내야함
728x90

'Java' 카테고리의 다른 글

프로그래머스 코딩테스트 연습 level1 크레인 인형뽑기게임  (0) 2021.04.02
ch. 5 참조타입 - 배열 타입  (0) 2021.03.17
ch. 5 참조타입  (0) 2021.03.17
ch. 4 조건문과 반복문  (0) 2021.03.11
Ch.1 java 시작하기  (0) 2021.03.08