
📎 복습하기 - 220725
🔍 변수(Variable)란? 4p
하나의 값을 저장할 수 있는 메모리 공간임.
선언된 변수에 할당된 메모리 값 변경 읽어올 때 사용.
변수 선언은 변수타입 + 변수이름 형식으로 선언함.
변수타입을 다르게 작성함.
1️⃣변수 작명 규칙(variable naming convention)
변수 작명(variable naming) 방법 정리
영문, _, $ 포함 가능.%, _ 로 변수 작명 경우는 주로 SW 제품안의 프로그램에서 사용함.int variable; 
int _variable; 
int $variable; 
int %variable; int 00variable; // 변수명 첫 글자는 숫자로 작성 X.
int vari00able; // 중간이나 
int variable00;		// 마지막에 숫자 작성 가능.*camel notation(낙타 표기법) : 영문 표기시 두번째 단어부터는 첫 글자는 대문자.
➡ 결론, 변수이름은 영어로만. 여러단어 작명은 camel notation사용
2️⃣클래스 작명 규칙(class naming convention)
 1️⃣ 내용의 변수 작명(variable naming) 방법과 동일함
3️⃣변수 사용법
int a;			// 그냥 변수 선언
int a = 10;		// 변수 선언 후 초기값 설정
💡
👨🏻🏫 : "실무에서 변수 선언할 때, 초기값을 설정할 수 있다면 최대한 설정하는 것을 추천합니다."
✍ 원의 면적 계산하기(실습예제)
⌨️ coding⤵️
package p01.basic;
// 원의 면적 계산하기 
public class ComputersArea {
//	변수이름 작명의 최신 트렌드 : 원래 데이터 또는 사용 목적에 맞게 긴 단어 사용
	public static void main(String[] args) {
		double radius; 	// r- 변수 이름을 갖는 데이터 저장소 정의 
		double area; 	// a- 변수 이름을 갖는 데이터 저장소 정의
		
//		1. 입력데이터 읽기(반지름 읽기)
		radius =30;
		
//		2. 원의 면적 계산하기 : 입력데이터를 출력 데이터로 가공
		area = radius * radius * 3.14;
		
		
//		3. 원의 면적을 출력하기 (콘솔창에 보여주기)
		System.out.println("원의 반지름이" + radius + "인" + "원의 면적은 " + area + "입니다.");
		
	}
}
🖥 print ⤵️

<에러노트 link>
Scanner input = new Scanner(System.in);
💡 콘솔(console)에 input 값이 여러개인 경우 
스페이스로 값을 구분함. 엔터로 값을 실행함.
4️⃣식별자(identifier) 용어
🔍 identifier(식별자)란?
ex) VariableEX(class name), main(method), age(variable name), radius(variable name)
식별자 코드 예시 넣기🔍 keyword(reserved word :예약어)란?
5️⃣변수(variable) 용어
변수(variable)용어
✍️ 식별자(identifier), 변수(variable) 실습
⌨️ coding⤵️
코드를 입력하세요🖥 print ⤵️
[출력이미지]
🔍 리터널(literal)이란?
1️⃣리터럴(literal)의 종류
정수 리터럴, 실수 리터럴, 문자 리터럴, 문자열 리터럴, 논리문자 리터럴로 나뉜다.
ex) 15, 5, 0.5, 0.1, 30 중에서
정수형 리터럴 : 15, 5
실수형 리터럴 :  5.0, 0.1 
💡 literal 값들이 프로그램이 메모리에서 실행될 때, 같이 별도 테이블로 관리되고 있다.
2️⃣이스케이프 시퀀스(escape sequence)
이스케이프(escape)문자란?
\가 포함된 문자 리터럴(literal)로 특수한 용도로 사용됨.
\n, \t, \\, \", \', \u16진수
💡 보드에서 엔터키 누르면 두개의 escape 문자(\n \r) 발생함.
\n : new line
\r : carrage return
✍ 이스케이프 시퀀스(escape sequence) 실습
⌨️ coding ⤵️
package p01.eascape_esQuence;
public class EscapeSquenceEx {
	public static void main(String[] args) {
			
		System.out.println("n줄 바꿈 n연습" ); 
		System.out.println("\n줄 바꿈 \n연습" );
		
		System.out.println("t탭키 t연습" );
		System.out.println("\t탭키 \t연습" );
		
		System.out.println("\\ backslash 1개 출력" );
		System.out.println("\\\\\\ backslash 3개 출력" );
		
		System.out.println( "큰 따옴표 \" 출력");
		System.out.println( "작은 따옴표 \' 출력");
 
 // 실상 거의 쓸 일 없음.		
	}
}🖥 print ⤵️
[이스케이프 실행이미지]
💡
👨🏻🏫 : "실무 수행시 아래 방법으로 소스코드의 정보를 작성해야합니다."/******************************************/ /*Class 이름 : VariableEx3 */ /*Class 용도 : 청소년과 성인을 구분하는 class */ /*최초 생성일자 : 2022.07.26 */ /*최초 작성자 : 안성연 */ /*최종 수정일 : 2022.07.26 */ /****************************************/
1️⃣최상위비트(MSB)
🔍 최상위비트(MSB)란?
최상위비트(MSB)를 *부호비트로 사용함.
*부호비트 : 부호 있는 자료형의 첫 번째 비트 (0111,1111)
2️⃣n의 보수 변환 방법
1의 보수로 변환하는 방법
0 ➡️ 1, 1 ➡️ 0으로 변환1의 보수로 변환 : 111111002의 보수로 변환하는 방법
1의 보수 + 1 = 2의 보수<보수변환 예시>
00000011 → 2의 보수로 변환하려면
1의 보수 + 1
= 11111100 + 1
= 11111101
01101100 → 2의 보수로 변환하려면
1의 보수 + 1
= 10010011 + 1
= 10010100
56 → 10의 보수로 변환하려면
9의 보수 + 1
= 43 + 1
= 44
3️⃣2진수 ➡️ 10진수 변환 방법
"10101100을 10진수로 변환하기."
MSB를 이용한 방법
1. MSB가 1이므로 음수(-)이다.
2. 10진수로 변환한다.
보수를 이용한 방법
1. 10101100 → 2의 보수로 변환한다.
2. 2의 보수를 10진수로 변환한다.
3. -부호를 붙인다.
<보수로 10진법 변환 예시>
01010100
= 02^7 + 12^6 +02^5 + 12^4 + 02^3 + 12^2 + 02^1 + 02^0
= 0 + 64 + 0 + 16 + 0 + 4 + 0 + 0
=84
=-84
1️⃣기본(primitive) 타입
🔍 기본(primitive)타입이란?
정수 리터럴, 실수 리터럴, 문자 리터럴, 문자열 리터럴, 논리문자 리터럴을 직접 저장하는 타입임.
bit8개가 모여 byte 1개를 형성함.
💡byte타입은 실무에서 거의 사용하지 않는다. ➡️ 크기가 너무 작기 때문에 이후에 수정해야할 가능성이 있다. 대부분 int 타입을 사용한다.
2️⃣char(character) 타입
🔍 char type이란?
문자형 리터럴로 ''안에 문자를 관리하기 위한 타입임.'A', '1', '가' ...*유니코드(UNICODE) : 세계각국의 문자를 2byte로 표현할 수 있는 숫자로 매핑한 국제 표준 규약
*아스키(ASCII)코드 : 영문 키보드로 입력할 수 있는 모든 기호들이 할당되어 있는 가장 기본적인 부호 체계 (American Standard Code for Information Interchange)
✍ char 실습
⌨️ coding ⤵️
package p02.datapython_basic;
public class CharEx {
	public static void main(String[] args) {
		char c1 ='A'; //문자
		char c2 = 65; // 정수값, 10진수
		char c3 = '\u0041'; // 정수값, 16진수 ,(u : unicode를 의미)
		
		char c4 ='가';
		char c5 =44032;
		char c6 ='\uac00';
		
		System.out.println("c1 =  " + c1);
		System.out.println("c2 =  " + c2);
		System.out.println("c3 =  " + c3);
		System.out.println("c4 =  " + c4);
		System.out.println("c5 =  " + c5);
		System.out.println("c6 =  " + c6);
		
	}
}
🖥 print ⤵️
[char출력 이미지]
3️⃣아스키(ASCII)코드
🔍 아스키(ASCII)코드란?

4️⃣유니코드(UNICODE)
🔍 유니코드(UNICODE)란?

✍️ (실습)
⌨️ coding ⤵️
//🖥 print ⤵️
[출력 이미지]