자바의 정석_기초편 Chapter 2 中 [1 ~ 9] (230724. 월)
2-1 : 화면에 글자 출력하기
print()
println()
- System.out.print() : 괄호 안의 내용을 출력하되 줄바꿈 X
- System.out.println() : 괄호 안의 내용을 출력하되 줄바꿈 O.
2-2 덧셈, 뺄셈 계산하기.
System.out.println(5+3);
>> 5+3 의 출력값인 8이 화면에 출력된다.
System.out.println(5-3);
>> 5-3 의 출력값인 3이 화면에 출력.
System.out.println(5*3);
>> 5*3 의 출력값인 15가 화면에 출력.
System.out.println(5/3);
>> 5/3 의 출력값인 1 이 화면에 출력.
+, -, *, / 를 연산자 라고 부른다.
2-3 : 변수의 선언과 저장
- 변수 : 하나의 값을 저장할 수 있는 저장공간.
변수타입 변수이름; // 변수를 선언하는 방법
int x; // 정수를 저장하기 위한 변수x 를 선언한다.
x = 5; // 변수 x에 5를 저장.
x = 3; // 변수 x에 3를 저장. 기존의 5는 지워짐.
2-4 : 변수의 타입
숫자 | int | 정수*Interger 를 저장하기 위한 타입 (단, 20억이 넘을 땐 long) |
long | ||
float | 실수를 저장하기 위한 타입 - float : 오차없이 7자리 - double : 15자리 |
|
double | ||
문자 | char | 문자(character) 를 저장하기 위한 타입 |
String | 여러 문자 (문자열, string) 를 저장하기 위한 타입 |
각 예시.
int x = 100; // 정수를 저장할 변수의 타입은 int로 한다.
double pi = 3.14; // 실수를 저장할 변수의 타입은 double 로 한다.
char ch = 'a' ; // 문자(1개)를 저장할 변수의 타입은 char.
String str = "abc"; // 여러 문자 (0~n개)를 저장할 변수의 타입은 String.
2-5 : 상수와 리터럴
상수(Constant) : 값을 저장할 수 있는 공간.
변수와의 차이 : 한번 값을 저장하면 다른 값으로 변경이 불가하다.
상수 선언 방법은 변수와 동일.
final int MAX_SPEED = 10;
이와 같이 변수의 타입앞에 키워드 ' final ' 를 붙여주기만 하면 됨.
위와 같이 상수 값이 저장되면 밑의 200의 값은 에러 처리가 된다.
리터럴(literal)
흔히 12, 3.14, 'A' 와 같은 값들이 '상수' .
다만, 프로그래밍에서는 상수를 '값을 한 번 저장하면 변경할 수 없는 저장공간' 이라 정의했기에 이와 구분을 위해 상수를 다른 이름으로 불러야만 했다. 그래서 리터럴이란 용어가 등장.
- 정리 -
변수(variable) : 하나의 값을 저장하기 위한 공간.
상수(constant) : 값을 한번만 저장할 수 있는 공간
리터럴(literal) : 그 자체로 값을 의미하는 것.
2-6 리터럴의 타입과 접미사
종류 | 리터럴 | 접미사 |
논리형 | false, true | 없음 |
정수형 | 123, 0b0101, 077, 0xFF, 100L | L |
실수형 | 3.14, 3.0e8, 1.4f, 0x1.0p-1 | f, d |
문자형 | 'A', '1', '\n' | 없음 |
문자열 | 'ABC', '123', "A", "true" | 없음 |
정수형과 실수형에는 여러 타입이 존재 >> 리터럴에 접미사를 붙여서 타입을 구분.
정수형의 경우는 long타입의 리터럴에 접미사 'L' 을 붙이고
접미사가 없으면 int타입의 리터럴.
byte와 short타입의 리터럴은 별도 존재X, byte와 short타입의 변수에 값을 저장할 때는 int타입의 리터럴을 사용한다.
10진수 외에도 2, 8, 16진수로 표현된 리터럴을 변수에 저장가능, 16진수라는 것을 표시하기 위해 리터럴 앞에 접두사 '0x' 또는 '0X' 를 8진수의 경우에는 '0' 을 붙인다.
정수형 리터럴의 중간에 구분자 '_' 를 넣을 수 있게 되어 큰 숫자를 편하게 읽을 수 있게 됨.
실수형에서는 float 타입의 접미사 ' f ' 또는 ' F ' 를 붙이고, double 타입의 리터럴에는 접미사 'd' 또는 'D'를 붙임.
실수형 리터럴에는 접미사를 붙여서 타입을 구분,
float타입 리터럴에는 ' f ' , double 타입 리터럴에는 ' d ' 를 붙인다. 정수형에서는 int가 기본 자료형인 것 처럼 실수형에서는 double 이 기본 자료형이라서 접미사 ' d '는 생략이 가능하다.
접미사 f 와 L 은 꼭 기억하자.
2-7 문자 리터럴과 문자열 리터럴
문자 리터럴 : 'A' 와 같이 작은 따옴표로 문자 하나를 감싼 것을 의미.
두 문자 이상일 경우 큰 따옴표로 감싸야 하며 이를 문자열 리터럴 이라고 한다.
char ch = 'J' // char ch = 'Java'; 이렇게는 못함.
String name = "Java"; // 변수 name 에 문자열 리터럴 "Java" 를 저장
char 타입의 변수는 단 하나의 문자만 저장할 수 있으므로, 여러 문자 (문자열) 를 저장하기 위해서는 String 타입을 사용해야한다.
문자열 리터럴은 " " 안에 아무런 문자도 넣지 않는 것을 허용, 이를 빈 문자열 이라고 함.(empty string)
그러나 문자 리터럴은 반드시 작은 따옴표 안에 하나의 문자가 있어야함.
String str = ""; 가능
char ch = ''; // 에러뜸.
char ch = ' '; // 가능. 공백 문자(blank) 로 변수 ch를 초기화 한다.
2-8 : 문자열 결합
문자열 + any type -> 문자열 + 문자열 -> 문자열
any type + 문자열 -> 문자열 + 문자열 -> 문자열
위와 같이 덧셈 연산자(+) 는 피연산자가 모두 숫자 일 때는 두수를 더하지만, 피연산자 중 어느 한 쪽이 String 이라면 나머지 한 쪽을 먼저 String으로 변환한 다음 두 String을 결합.
2-9 : 두 변수의 값 바꾸기.
int x = 10;
int y = 20;
위의 값을 바꿔보자.
두 컵에 담긴 내용물을 바꾸려면 빈 컵이 필요한 것처럼, 값을 임시로 저장할 변수가 하나 더 필요.
int tmp; // 임시 값 저장하기 위한 변수(빈 컵의 역할)
tmp = x; // 1. x의 값을 tmp에 저장
x = y; // 2. y의 값을 x에 저장
y = tmp; // 3. tmp에 저장된 값을 y에 저장
위의 과정으로 진행된다.
가끔 저런걸 실수한다. 잊지 말자!!
230724 학습.
'진행중인 학습 > 자바의 정석_학습' 카테고리의 다른 글
자바의 정석_기초편 CHAPTER 3 中 [9 ~ 14] (230731) (0) | 2023.07.31 |
---|---|
자바의 정석_기초편 CHAPTER 3 中 [1 ~ 8] (230728) (0) | 2023.07.28 |
자바의 정석_기초편 CHAPTER 2 中 [10 ~ 17] (230726) (0) | 2023.07.26 |
자바의 정석_기초편 CHAPTER 1 (230721) (0) | 2023.07.21 |
들어가기 앞서, 게시판 목차_자바의 정석 기초편 (0) | 2023.07.21 |