지식보부상님의 공부 일지

Java [02] 변수 본문

KB IT's Your Life/Java

Java [02] 변수

지식보부상님 2025. 4. 21. 11:34

[1] 변수 선언

◈ 변수 선언

- 타입 변수명; 으로 선언

 

[2] 정수 타입

◈ 기본 타입 (primitive type)

- 정수: byte, char, short, int, long

- 실수: float, double

- 논리(true/false): boolean

 

◈ 정수 타입별 값 범위

 

정수 리터럴 표기법

- 2진수: 0b, 0B 로 시작, 0, 1로만 작성

- 8진수: 0 으로 시작, 0~7로만 작성

- 10진수: 소수점 없는 0~9 숫자로 작성

- 16진수: 0x, 0X 로 시작, 0~9, A, B, C, D, E, F, a, b, c, d, e, f 로 작성

 

[3] 문자 타입

◈ 문자 리터럴과 char 타입

- 문자 리터럴(char): 하나의 문자를 작은따옴표( ' ) 로 감싼 것, 유니 코드 저장 가능

char var1 = 'A';
char var2 = 65;	// 'A'
char var3 = 0x0041; // 'A'

- 초기화는 ' ' 으로 공백을 포함하여 초기화해야 함

[4] 실수 타입

◈ float과 double 타입

- 컴파일러는 default 로 실수를 double 타입으로 해석

=> float 타입을 원하면 리터럴 뒤에 f 나 F 붙여야

 

[5] 논리 타입

◈ boolean 타입 변수에 대입되는 논리 타입

- true / false

 

[6] 문자열 타입

◈ 문자열과 String 타입

- 문자열: 큰따옴표("")로 감싼 문자들 

=> String 타입 사용

 

◈ 이스케이프 문자

◈ 여러 줄 저장

- 큰따옴표 3개 (""" ~ """) 로 감싸면 작성된 문자열 그대로 저장됨 (Java 13부터)

 

[7] 자동 타입 변환

◈ 자동 타입 변환

- 크기가 작은 타입을 크기가 큰 타입으로 대입 (범위가 넘치거나 표현할 수 없으면 에러)

- 크기 순서: byte < short /  char < int < long < float < double 의 순서

 

[8] 강제 타입 변환

◈ 캐스팅 연산자 이용

- 작은타입 변수 = (작은타입) 큰타입 변수

더보기
int intValue = 10;
byte byteValue = (byte) intValue;

[9] 연산식에서 자동 타입 변환

◈ 실수 타입 자동 변환

int x = 1;
int y = 2;
double result = x/y;  // 0.0 이 결과로 저장됨

- x, y가 모두 int라 x/y 는 0 이 됨 => 원하는 결과 0.5 를 저장하기 위해선 다음과 같이 선언해야 함

double result = (double) x / y;
double result = x / (double) y;
double result = (double) x / (double) y;

 

◈ + 연산자

- 피연산자가 숫자면 => 덧셈 연산 

- 피연산자 중 하나라도 문자열이면 => 문자열 결합 (나머지도 문자열로 형변환)

더보기
String str = "3" + 7 // str = "37"
System.out.println(str) // 37 출력됨

[10] 문자열을 기본 타입으로 변환

◈ String → 기본 타입 형 변환

변환 타입  
String → byte Byte.parseByte(str)
String → short Short.parseShort(str)
String → int Integer.parseInt(str)
String → long Long.parseLong(str)
String → float Float.parseFloat(str)
String → double Double.parseDouble(str)
String → boolean Boolena.parseBoolean(str)

 

◈ 기본 타입 → String 형변환

- String.valueOf(기본타입값);

 

[11] 변수 사용 범위

◈ 중괄호 {} 블록

- 중괄호 {} 블록 내에서 선언된 변수는 해당 블록에서만 사용 가능

 

[12] 콘솔로 변수값 출력

◈ 표준 출력 메소드

- System.out.println() : 괄호 내 내용 출력 + 개행

- System.out.print() : 괄호 내 내용 출력

- System.out.printf("형식문자열", 값1, 값2, ...) : 형식 문자열 맞춰 출력

 

◈ 형식 문자열

 

[13] 키보드 입력 데이터를 변수에 저장

◈ Scanner 타입 변수 

- import java.util.Scanner; 

으로 import 해주어야

- Scanner scanner = new Scanner(System.in);

으로 사용자의 입력 값을 scanner 변수에 저장하도록 선언

- String inputData = scanner.nextLine();
으로 키보드로 입력된 내용 문자열로 읽고 inputData 변수에 저장

더보기
import java.util.Scanner;

public class ScannerExample{
	Scanner scanner = new Scanner(System.in);
    
    // 사용자에게 x 값 입력 받아서 정수로 저장
    System.out.print("x값 입력: ");
    String strX = scanner.nextLine();
    int x = Integer.parseInt(strY);
    
    // 사용자에게 y 값 입력 받아서 정수로 저장
    System.out.print("y값 입력: ");
    String strY = scanner.nextLine();
    int y = Integer.parseInt(strY);
    
    // x+y 값 출력
    System.out.println("x + y = " + (x+y) );
}

 

'KB IT's Your Life > Java' 카테고리의 다른 글

Java [07] 상속  (1) 2025.04.22
Java [06] 클래스  (1) 2025.04.22
Java [05] 참조 타입  (3) 2025.04.22
Java [04] 조건문과 반복문  (1) 2025.04.21
Java [03] 연산자  (0) 2025.04.21