변수와 자료형 (Variables and Types)

2023. 11. 20. 16:32
728x90

1. 변수 (Variable)

- 데이터를 담는 상자와 같은 역할.

- 할당 연산자(=)를 이용해 값을 저장할 수 있다.

- [자료형] [이름] = [값]

- 변수를 만드는 것을 선언(declare)한다 라고 부름.

- 변수값은 다시 할당 가능.

- 단, 맞는 자료형의 데이터만 넣어야함.

- 변수 이름은 중복 X

- 변수를 선언하는 것은 > 컴퓨터 메모리 상에 변수가 들어갈 공간을 확보하는 것.

// 선언과 할당은 한번에 안해도됨
int a;
a = 100;

// 한 줄에 여러변수 동시 선언 가능
int month = 11, day = 20;

 

* 변수 이름 짓기 (naming convention)

  • 숫자로 시작 X
  • _, $ 외의 특수문자 사용 X
  • int, class, return 등 예약어(자바 내부적으로 사용하는 단어)는 사용X
  • 일반적으로 camelCase로 지음.

 

2. 자료형 (Type)

-  데이터의 종류

- 어떤 변수를 선언하면서 해당 변수가 어떤 데이터를 저장할 수 있는지를 정의

 

1) 정수 자료형 

자료형 최소 최대
int -2147483648 2147483647
long -9223372036854775808 9223372036854775807
short -32768 32767
byte -128 127
  • long은 일반적인 정수 범위보다 큰 숫자를 입력해주기 때문에, 숫자 뒤에 L을 붙여준다.

2) 실수 자료형

자료형
자료형
최대
유효자리수
float
-3.4 * 10^38
3.4 * 10^38
7
double
-1.7 * 10^308
1.7 * 10^308
16
  • double이 기본
  •  float 변수에는 실수 뒤에 F를 붙여준다.
  • 각 자료형의 유효자리수를 넘어가게 되면 나머지는 반올림되거나, 0이 되거나, 반올림된다.
float floatPoint = 2.718281F;
double doublePoint = 3.14159265359;
double longPi = 3.14159265358979323846;
// 출력 : 3.141592653589793

 

3) 불린(boolean) 자료형

  • 참 또는 거짓을 표현하기 위한 자료형
  • true or false

4) 문자(char) 자료형

  • 단일 문자를 표현하기 위해 사용하는 자료형
  • 작은 따옴표를 사용!!

5) 문자열(String) 자료형

  • 여러 글자를 합쳐 단어, 문장 등을 표현하기 위한 자료형
  • 큰 따옴표 사용

 

3. 데이터 입력받기

: Scanner를 활용해 데이터 입력받기 가능

Scanner scanner = new Scanner(System.in);
System.out.println(scanner.nextLine());
byte scanByte = scanner.nextByte();
short scanShort = scanner.nextShort();
int scanInt = scanner.nextInt();
long scanLong = scanner.nextLong();

float scanFloat = scanner.nextFloat();
double scanDouble = scanner.nextDouble();

boolean scanBool = scanner.nextBoolean();
  • nextLine()은 엔터 입력까지 한 줄의 문자열을 받음.
  • 기본적으로 받고자하는 자료형의 이름이 담긴 메서드 사용
  • float, long 데이터 받는다고 해서 굳이 입력에 F를 넣어줄 필요 없음.
  • nextBoolean()은 true, false를 대소문자 구분없이 넣어줄 수 있음.
  • 공백으로 구분이 가능

 

4. Escape Sequence 

: 문자열 내부에 키보드로 입력하기 어려운 특수한 문자를 표현하고 싶을 때 사용. (주로 \가 사용됨)

ex. ", tab, 다음줄(엔터) 등

-

// 문자열 내부에 " 표현하기
System.out.println("\"");

// char 데이터로 ' 표현하기
System.out.println('\'');

// 문자열 내부에서 \ 표현하기
System.out.println("\\");
Escape Sequence 결과
\n 다음 줄 (아래줄에 표현)
\t 탭 (\t 다음 탭의 위치까지 옮긴뒤 표현)
\r 캐리지 리턴 (\r줄의 앞으로 옮긴다)
\b 백스페이스 (\b 앞의 문자를 하나 지운다)

 

System.out.println("개행문자: \n 이 다음은 아래줄에 표현됩니다.");
System.out.println("탭키: \t다음 탭의 위치까지 옮긴 뒤 표현됩니다.");
System.out.println("Carriage Return: \r줄의 앞으로 옮깁니다.");
System.out.println("백스페이스: \b앞의 문자를 하나 지웁니다.");

// 결과
개행문자:
    이 다음은 ~.
탭키:   다음 탭의 ~
줄의 앞으로 옮깁니다.
백스페이스:앞의 문자를 ~

 

5. String Formatting 

: 문구 작성시 상황에 따라 일부분만 바꿔서 여러번 문자열을 바꿔서 표현하고 싶을 때 사용

ex. 농도와 상태 메시지는 변수에 저장하고, 이를 이렇게 표현하겠다

int dust = 10;
String status = "좋음";

System.out.println(String.format("미세먼지 농도: %d (%s)", dust, status));

// 결과
미세먼지 농도 : 10 (좋음)

 

- 템플릿 역할을 하는 문자열을 넣어주고, 뒤에 템플릿에 사용할 값들을 넣어준다.

 

- format specifiers 포맷 코드 : 어떤 자료형의 데이터가 표현 될지를 문자열 내부에 지정하는 방법

%s 문자열(String)
%c 문자(char)
%d 정수(int)
%f 부동소수(float, double)

 

 

6. 배열  

- 하나의 변수에 여러 데이터를 정리하여 저장하기 위해 사용.

- 변수 선언할 때 자료형 뒤에 [ ]를 덧붙여 선언, { } 를 이용해 저장할 값들을 나열

- 접근할 때는 [ ] 안에 몇번째 값인지 지정 (0부터 시작)

- 배열의 크기는 배열.length 활용

int[] scores = {85, 90, 95};
scores[1] = 80;

System.out.println(scores[1]);

// 결과값
80

// 크기를 정할 때 그 크기를 변수로 결정할 수 있다.
int students = 10;
String[] names = new String[students];
int[] scores = new int[students];

int numOfStudents = studentNames.length;

 

 

 

 

 

728x90

'Programming > Java' 카테고리의 다른 글

클래스 (Class)  (1) 2023.11.28
메서드 (Methods)  (1) 2023.11.23
제어문 (Control Statements)  (1) 2023.11.22
연산자 (Operators)  (0) 2023.11.21
자바 개요  (1) 2023.11.20

BELATED ARTICLES

more