🕘 지난 시간 배운 내용에 대한 몇가지 정리
String : 문자열은 문장의 끝에 \0(널문자)가 함께 저장이 된다. (몇개의 byte를 쓸지 모르기에 끝을 표시해야 함)
참조형 변수 = 주소형 변수
: 다른 기본형 변수가 실제 값을 저장하는 저장공간이라면, 참조형 변수는 실제 값이 아닌 원본값의 주소값을 저장함
: 참조형 변수는 주소값을 저장하는 주소형 변수라고 불러도 됨
숫자를 문자로 변환하고, 문자를 숫자로 변환하는 방법을 적어보았다.
import java.util.Scanner;
public class JavaScanner {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int asciiNumber = sc.nextInt();
char ch = (char)asciiNumber; // 문자로 형변환을 해주면 숫자에 맞는 문자로 표현됨
System.out.println(ch);
}
}
import java.util.Scanner;
public class JavaScanner2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
char letter = sc.nextLine().charAt(0); // 첫번째 글자만 받아오기위해 charAt(0) 메서드를 사용
int asciiNumber = (int)letter; // 숫자로 형변환을 해주면 저장되어있던 아스키 숫자값으로 표현됨
System.out.println(asciiNumber);
}
}
Stack영역
: 정적으로 할당된 메모리 영역
- 크기가 몇
byte
인지 정해져있는 기본형 변수를 저장- 크기가 정해져있는 참조형 변수의 주소값도 저장
Heap영역
: 동적으로 할당된 메모리 영역
- 크기가 계속 늘어날 수 있는 참조형 변수의 원본을 저장
입력
Java프로그램에서 기본적으로
Scanner.in
객체의next()
명령을 사용해서 입력받음
// Scanner 객체를 new 명령어로 생성 Scanner sc = new Scanner(System.in); // sc(Scanner)의 .next(); 를 실행하면 input 변수에 입력한 글자를 받을 수 있음 String input = sc.next();
출력
Java 프로그램에서 기본적으로
System.out
객체의println()
명령을 사용해서 출력함
Scanner sc = new Scanner(System.in); String input = sc.next(); // 입력한 글자 출력 System.out.println("입력값 : " + input); // 실행결과 {입력} 입력값 : {입력}
비트
- 비트는 0, 1 형태의 2진수 데이터로서 컴퓨터가 저장할 수 있는 최소 단위
- 정수형 값은 10진수 숫자(0~10 범위의 숫자)이며 2진수(0~1범위)Bit로 저장함
- 4개의 Bit로 16진수 숫자(0~F(16)범위의 숫자)를 2진수(0~1범위)로 저장함
바이트
- 바이트는 8개의 비트로 구성되어 있음
- 1Byte 내에서 숫자 변수는 Bit 2진수를 10진수로 저장함
- 10진수로는 0~255(2의 8승)까지 저장함- 1Byte 내에서 문자 변수의 경우만 Bit 2진수를 16진수로 저장함