2 분 소요

변수(variable)

변수란?

변하는 수라고 말하는데, 프로그래밍에서 변수란 물리적으로 메모리라고 생각할 수 있습니다.

즉, 데이터를 저장하는 공간이라고 할 수 있습니다.

변수의 타입

image-20240123124009118

논리(boolean)는 true & false로 나뉩니다.

1byte = 8bit
2 byte = short
4 byte = int
4byte = long

  • 기본형(Primitive type)
    • 8개
    • 실제 값을 저장
  • 참조형(Reference type)
    • 기본형을 제외한 것

기본형(Primitive type)

  • 논리형

    • True와 False중 하나를 값으로 갖습니다.
    • 조건식과 노리적 계산에 사용됩니다.
  • 문자형

    • 문자를 저장하는데 사용됩니다. 변수 당 하나의 문자만을 저장할 수 있습니다.
  • 정수형

    • 정수 값을 저장하는데 사용됩니다. 주로 사용하는 것은 int와 long이며, byte는 이진 데이터를 다루는데 사용됩니다. short는 c언어와의 호환을 위해 추가되었습니다.
  • 실수형

    • 실수 값을 저장하는데 사용됩니다. float와 double이 있습니다.

      ​ 기본형은 intdouble입니다.

      종류/ 크기 1 2 4 8
      논리형 boolean      
      문자형   char    
      정수형 byte short int long
      실수형     float double

CPU는 연산을 할 뿐만아니라 레지스터로 CPU내에서 임시 저장을 합니다.

image-20240123142000565

1바이트는 8개의 비트로 이루어져있습니다.

0 0000000

맨 앞에 비트는 양수와 음수를 나타내는데 0일 때 양수 1일때 음수 입니다. 0 0000001 = 1 0 0000010 = 2 0 0000011 = 3

음수를 표현하겠습니다. 뒤집어서 더하기 1을 해주는 겁니다.

1 000000 = -(01111111 + 1) = -(100000)

변수의 선언방법

타입 변수명;

int score;

int score = 100;

score = 100;

=의 뜻은 오른쪽에 있는 값을 왼쪽의 변수에 넣겠다는 뜻입니다.

자바는 public에 있는 파일명과 class명이 같아야합니다. 그리고 변수는 마지막 값만 유효합니다. 위에서 선언한 변수를 또 사용할 수 있지만 그렇게 되면 기존의 변수에 들어있던 값은 사라집니다.

image-20240123152044388

image-20240123152122563

명명규칙

  • 대소문자가 구분되며 길이에 제한이 없다.

    • True와 true는 서로 다른 것으로 간주됩니다.
  • 예약어(Reserved word)를 사용해서는 안 된다.

    • true는 예약어라 사용할 수 없지만, True는 가능하다.
  • 숫자로 시작해서는 안 된다.

    • top 10은 허용하지만, 7up은 허용되지 않는다.
  • 특수문자는 ‘_‘와 ‘$’만을 허용한다.

    • $harp은 허용되지만 S#arp는 허용되지 않는다.

    • 클래스 이름의 첫 글자는 항상 대문자로 한다.
    • 변수와 메서드 이름의 첫 글자는 항상 소문자로 한다.
    • 여러 단어 이름은 단어의 첫 글자를 대문자로 한다.
      • lastIndexOf, StringBuffer
    • 상수의 이름은 대문자로 한다. 단어는 ‘_‘로 구분한다.
      • PI, MAX_NUMBER

변수, 상수, 리터럴

  • 변수(variable)

    • 하나의 값을 저장하기 위한 공간
  • 상수(constant)

    • 한 번만 값을 저장할 수 있는 공간
  • 리터럴(literal)

    • 그 자체로 값을 의미하는 것

      int score = 100;
      score = 200;
      char ch = ‘A’
      String str = “abc”;
      final int MAX = 100; final변수는 변경이 불가능합니다.
      MAX = 200; // 에러

변수의 기본값과 초기화

image-20240123153638714

문자와 문자열

image-20240123153708056

String str1 = null; 과 String str2 = ““;은 다릅니다.

int value = 10 + 20; 과 같이 숫자끼리의 연산뿐만 아니라 문자열끼리의 연산도 가능합니다. image-20240123154136398

System.out.println("7"+7+7);도 가능한데, 이에 대한결과는 777이 나옵니다.

System.out.pㄱintln(7+7+"7")147입니다.

System.**out**.println(name+""+height+""+weight);이런것도 가능하며 이에 대한 결과로는 홍길동173.575.3입니다.

image-20240123154701233

정수의 오버플로우

byte b = 127; byte b = 128; //에러발생

형변환(Casting)

형 변환이란?

​ 값의 타입을 다른 타입으로 변환하는 것입니다.

​ boolean을 제외한 7개의 기본형은 서로 형변환이 가능합니다. 특정 데이터나 변수 앞에 서 작은 데이터를 큰 데이터에 넣을땐 형 변환이 됩니다.

float f = 1.6f; int i = (int)f;

변환 수식 결과
int > char (char)65 ‘A’
char > int (int)’A’ 65
float > int (int)1.6f 1
int > float (float)10 10.0f
  • 암시적 형변환(묵시적형 변환)

    대입 연산 혹은 산술 연산에서 c 컴파일러가 자동으로 실행해 주는 타입 변환을 가리킵니다.

    데이터의 손실이 최소화되는 방향으로 변환이 진행됩니다.

  • 명시적 형변환

    어떤 자료형으로 선언된 변수를 다른 자료형으로 변환(형 변환)해줍니다.

    큰 데이터에서 작은 데이터로 변환될 때 일부를 잘라서 작은 데이터 크기로 맞춰주는 것을 명시적 형변환이라고 합니다.

image-20240123155205072

image-20240123155212396

자주 사용하는 타입⭐

실무에서 자주 사용하는 타입은 다음과 같습니다.

  • 정수 - int, long: 자바는 정수에 기본으로 int를 사용합니다. 만약 20억이 넘을 것 같으면 long을 사용하면 됩니다.

    • 파일을 다룰 때는 byte
  • 실수 - double:실수는 고민하지 말고 double을 사용하면 됩니다.

  • 블린형 - boolean: true, false 참, 거짓을 표현합니다.

    조건문에서 자주 사용

  • 문자열 - String:문자를 다룰 때는 문자 하나든 문자열이든 모든 String을 사용하는 것이 편리합니다.

카테고리:

업데이트:

댓글남기기