2일차

– 데이터 형식

1. 논리적 유형: 1바이트. 참과 거짓 두 가지만 존재합니다. 기본값이 잘못되었습니다. 다른 언어와 달리 Java에서는 참과 거짓을 숫자로 바꿀 수 없습니다.

2. 문자형 : 2바이트, 다국어 처리를 위한 유니코드 방식. 유니코드(16)에는 ASCII 코드(10)가 있습니다.

		char c1 = 'A'; //내부적으로 아스키코드값 즉, 65로 인식함
		System.out.println("c1 = " + c1); //출력결과 A
		
		char c2 = 65 ; //정수로 초기화 했지만, char형이므로 내부적으로 아스키코드값 A로 인식함
		System.out.println("c2 = " + c2); //출력결과 A
		
		//유니코드로 명시
		char c3 = '\u0041' ; //A를 유니코드로 표현. 16진수 표현\\u
		System.out.println("c3 = " +c3); //출력결과 A

3. 정수형(1byte=8bit)
* 바이트: 크기 1바이트 표현 범위 -128~127
* 짧은: 크기 2바이트
* int: 크기가 4바이트인 대부분의 정수 유형은 int로 작성됩니다(기본값).
* long : 크기 8바이트

192

정수 값은 기본적으로 int로 인식됩니다.
int 인식 후 long으로 변환되기 때문에 처음부터 L을 붙여주면 빠른 연산이 가능합니다(버그없음!)

4. 실수
플로트: 4바이트

double: 8바이트(기본값)

2.12에프

f를 사용하지 않으면 오류 메시지가 표시됩니다! 데이터 유형을 지정합니다. 비.롱. (케이스 관련 ×)

다섯 번째 문자열

기준 데이터형(대문자로 시작)이 아닌 참조 데이터형으로 문자열로 작성한다.

String str = "오늘은 \"목요일\" 입니다";

출력에 큰따옴표를 표시하려면 앞에 백슬래시를 추가하십시오.

String str2 = "오늘은 '부산' 에 비가 와요.";

작은따옴표는 문자열 안에 있기 때문에 자동으로 문자열로 처리됩니다.

– 유형 변환

Java는 데이터 유형이 동일한 경우에만 작동할 수 있습니다. > 데이터 유형은 하나로 결정되어야 합니다.
기본 데이터 유형은 기본 데이터 유형 사이에 있고 참조는 참조 사이에 있습니다(부울은 불가능함).


1. 암시적 유형 변환(자동 유형 변환)

데이터 손실 x, 동일한 데이터 유형이지만 더 큰 바이트 크기(int->long)
더 큰 형식으로 경제적 지원발생하는 방식은 자동으로 발생합니다.

		int in1 = 1234;
		long lg1 = 5678L;
		long result3 = in1 + lg1; //자동으로 큰 자료형으로 형변환

2. 명시적 유형 변환(강제 유형 변환): 데이터 손실이 발생할 수 있습니다. (long->int, long->float (정수보다 큰 실수))

더 작은 형식으로 하락이렇게 된 형태
* 데이터 손실이 발생할 수 있습니다.
* 모양 : (데이터 유형)(데이터 또는 변수) =(캐스트 연산자)(데이터 또는 변수)

		int it1 = 1234;
		float f1 = 345.567f; //f 안 붙이면 오류!
		
		// float > int
		
		int result3 = it1 +(int)f1;

즉, 암시적 타입 변환은 최종 형태의 데이터 타입을 변경하여 할 수 있으며, 명시적 타입 변환은 (데이터 타입) (데이터 또는 변수) 작업이 필요합니다.

– 연산자

(1차) 증가 > 산술 > 시프트 > 비교 > 비트(1차만) > 논리 > 조건(삼항) > 할당

▷ 논리 연산자

* && 논리적 곱(및)

전제조건 && 사후조건 > 모두 참인 경우에만 참. 전제 조건이 거짓이면 사후 조건이 실행되지 않습니다.

* || 논리합(또는)

전제 조건 || 하나의 사후 조건 >만 참이면 참입니다. 전제조건이 참이면 사후조건 x가 실행되고, 거짓이면 사후조건이 실행됩니다.

* ! 거절

!true = 거짓, !false= 참.

논리 연산자의 경우 부정만 먼저 오고 나머지는 6번째로 옵니다.

조건부(삼항) 연산자

형태: (조건) ? 허위 사실;

ASCII 코드 A 65 ~ Z 90 , a 97 ~ z 122

ASCII 코드를 작성할 때 숫자 대신 영문자를 입력할 수 있습니다.

		//대소문자를 확인하는 조건연산자
		//아스키코드 A 65 ~ Z 90 , a 97 ~ z 122
		
		char ch="b";
		String s;
		
		  	// ch >= 65 && ch<=90
		s = (ch >= 'A' && ch<= 'Z') ? "대문자이다." : "대문자가 아니다.";

-스캐너

java.util.Scanner input = new java.util.Scanner(System.in);

입력된 값은 변수 next(data type)()에 할당됩니다.

int 변수 = input.nextInt();

더 이상 입력을 받을 수 없으면 input.close();