변수

김현·2023년 7월 10일

자바

목록 보기
3/31

1. 변수란?

  • 프로그램에서 다양한 종류의 자료를 표현할 수 있는 값을 변수라고 부르며, 일반적으로 웹 페이지에서 처리하고자 하는 "데이터"에 해당

2. 자료형(Data Type)

  • 프로그래밍 언어에서 변수의 종류를 구별하기 위해 사용되는 키워드
  • 자바에서 제공되는 자료형의 종류에는 총 8가지가 있으며, 이를 기본 자료형(Primitive Data Type)이라 함

3. 자료형이 가지는 의미

  • 모든 변수는 컴퓨터의 메모리 영역에 생성.
  • 일반적으로 메모리란, pc에 설치하는 ram을 의미.
  • 4byte의 크기를 갖는 변수값 하나를 생성할 경우, pc의 ram에서 해당 용량만큼을 사용
  • 변수는 ram의 크기를 넣지 않는 범위 안에서만 생성할 수 있음
    (용량을 넘어서는 경우 out of memory 에러 발생)

4. 문자열 데이터

  • 프로그램 코드에서 "문장"을 표현하기 위해 사용되는 데이터 값
  • String(첫글자 대문자)
  • 문자열을 표현하기 위한 자료형이다. (첫 글자 대문자 주의)
  • 글자 수에 상관없이 쌍따옴표("")로 묶인 내용을 할당할 수 있다.
  • 숫자값의 경우 쌍따옴표로 묶이게 되면 문자열로 취급되므로, 숫자와 문자열을 분명하게 구별해야 한다.

5. 변수의 사용방법

  • 변수를 사용하는 방법은"선언"과 "할당"의 두 영역으로 구분됨.

  • 변수의 선언
    -> 선언은 데이터 형과 사용하고자 하는 변수의 이름을 지정한 후, 세미콜론(;)으로 한 라인을 종료함. (데이터형 변수이름...; ex. int kor;)

  • 변수의 할당
    -> 선언된 변수에 원하는 값을 대입하는 과정을 의미, 값의 대입은 대입연산자(=)를 사용하며, 우변에서 좌변으로 대입
    변수이름 = 값;

  • 사용 예시
    변수의 선언(num1은 int타입으로 선언)
    int num1;

    변수의 할당(num1의 값은 100으로 할당)
    num1 = 100;

  • 변수의 할당의 통합(선언과 할당은 다음과 같이 한 줄로 표현될 수 있다.)
    데이터형 변수이름 = 값;
    int num1 = 100;

6. 문자열 데이터

  • String 형의 변수를 선언하고, 쌍따옴표로 묶인 값을 대입함

  • 빈 문자열이나 공백도 문자열 데이터임
    문장을 표현
    String msg = "안녕하세요. 자바";

    빈 문자열 값
    String blank = "";

    숫자값이 쌍따옴표로 묶였다면 문자열이됨
    String age = "20";

    숫자
    int age2 = 20;

  • 문자열 데이터의 덧셈
    문자열 + 문자열 => 두 문장을 하나로 합쳐준다
    String language = "JA" + "VA";

    출력
    JAVA

  • 문자열 + 기본자료형
    기본자료형의 데이터가 문자열로 변환되고, 두 문장이 합쳐진다.

    int타입의 숫자가 문자열과 합쳐지면 문자열이 됨
    int age = 10;
    String name = "자바학생";
    String result = age + name;

    10 + "자바학생" -> "10자바학생"

7. 변수 이름 명명 규칙

  • 변수 이름은 영문, 숫자, "_", "$"만 사용가능
  • 변수 이름의 첫 글자는 숫자로 시작될 수 없다.
  • 대/소문자를 엄격하게 구별하므로 오타에 주의
  • 자바에서 사용하는 예약어(키워드)를 사용할 수 없음
  • ex) myname, myName -> 둘이 다른 변수(변수 이름을 비슷하게 하지 않음, 가독성있는 변수를 만드는게 좋음 (myName, my_name, userPassword)
  • 클래스 이름의 명명 규칙도 변수 이름의 규칙과 동일함

8. 값의 할당 방법

  • boolean 은 true(참), false(거짓) 중의 한 가지만 갖음
    boolean is Korean = true;

  • char는 홑따옴표(')로 감싸진 한 글자만 대입 할 수 있다.
    char first = '곽';

  • long, float, double은 다른 데이터 형과의 구별을 위해 값 뒤에 데이터형의 첫 글자를 접미사로 가질 수 있다.

    접미사는 대/소문자를 가리지 않지만, 가급적 대문자로 사용하는 것이 좋음
    long money = 50000000L;
    float PI = 3.14F;
    double lat = 128.234D;

9. 값의 대입 방법

  • 생성된 변수는 다른 변수에 대입될 수 있음
    int num1 = 100;
    int num2 = num1;

10. 변수 사용의 제약

  • 반복하여 다른 값이 할당될 수 있지만, 선언은 중복 불가
    int num1 = 100;
    num1 = 200;
    int num1 = 300; <- 이미 선언되었기에 에러 발생

  • 선언되지 않은 변수는 사용할 수 없다.

  • 값이 대입되지않은 변수는 다른 변수에 대입하거나 출력할 수 없다.
    int num1 ;
    int num2 = num1;
    할당되지 않은 변수를 대입했기에 에러
    System.out.println (num1);
    할당되지 않은 변수를 출력했기에 에러

11. 상수

  • 상수 = 변하지 않는 수
  • 변수와 마찬가지로 메모리상에 존재하지만, 값이 변경될 수 없는 데이터
  • final 키워드가 사용되어 선언된 변수는 상수로 생성됨
    final int age = 20; (재할당 불가능)
    final long money = 12000L;
    final float PI = 3.14F;
  • 메모리상에 이름이 생성되므로 접근은 가능하지만, 할당된 값을 변경할 수 는 없음(읽기 전용)
    final int age = 20;
    age = 21; <- 에러발생

복습

  • 변수 선언 및 할당

1) num1을 int로 선언한다.

2) 선언된 num1에 100이란 값을 할당해주고 출력을 한다.

3) 결과에 할당된 값이 잘 나오는 걸 확인 할 수 있다.


1) t를 byte로 선언하고 100이란 값을 할당해준다.

2) s를 short로 선언하고 250이란 값을 할당해준다.

3) b를 boolean으로 선언하고 true로 할당한다.

4) 출력을 하고 결과에 할당된 값들이 잘 나오는 걸 확인 할 수 있다.



1) num2에 long을 선언하고 값을 할당한다.

2) num3에 double을 선언하고 값을 할당한다.

3) num4에 float를 선언하고 값을 할당한다.

4) c에 char을 선언하고 값을 할당한다.

5) 출력을 하고 결과에 할당된 값들이 잘 나오는걸 확인할 수 있다.


1) width에 int를 선언하고 100의 값을 할당한다.

2) PI에 final double을 선언하고 3.14의 값을 할당한다.

3) 출력을 하고 결과에 할당된 값들이 잘 나오는걸 확인할 수 있다.

4) width의 값을 200으로 변경한다.

5) 값을 변경했지만 이 전에 width를 final로 고정하였기 때문에 값이 변하지 않은 걸 알 수 있다.

0개의 댓글