논리형은 참, 거짓을 판별할 수 있는 값 논리형의 자료형은 boolean을 사용한다. 해당 값은 True, Flase 두가지의 값만 있다.
문자형은 문자 하나를 저장한다. char -> char str='a'; (2byte) => 0~065535(+양수만)까지 저장
여기서 0~065535의 범위는 우리 인간 체계가 아닌 컴퓨터에서의 범위를 말한다. 컴퓨터는 숫자만 기억하고 인식하기때문에 범위는 숫자로만 나타낼수 있는것이다. 아스키 코드값 => 0~225 까지 저장한다.
A는 65, B는 66, C는 67, a 는 97, b 는 98, c는 99로 기록이 된다.
화면에 출력 => 숫자 => 내부적으로 문자로 변환 => 출력
하지만 이렇게 영문자는 숫자로 변환은 가능하겠으나, 그이외의 다른 나라의 언어를 컴퓨터로 모두 표현을 하려면 새로운 코드가 필요한데 여기서 나타나는것은 "유니코드" 이다 우리나라 한글도 유니코드에 포함되고, 아스키코드 값의 확장판이라 볼수가 있다.(비 영어권 사람들에게 자기 나라 언어로 개발할 수 있도록 설계된 코드값)
유니코드 값의 범위는 0 ~ 065535 이다. 즉 char의 인식 범위가 0 ~ 065535로 지정이된 이유가 이러한 이유이다.
** 중요 **
String은 문자열, 문자열은 'a'+'b' => "ab", '한'+'글' => "한글" 이렇게 표현을 한다. 혹따옴표는 문자 한글자, 쌍 따옴표는 문자 2개 이상을 묶는다.
자바에서는 문자열은 기본자료형이 아니고 참조형이다. 참조형 = 클래스형
** 중요 **
2byte의 기억공간을 갖고있는 데이터 타입은 short과 char 두가지 이다.
여기서 JAVA를 이용 직접 확인해 보자.
System.out.println("논리적인값 저장(참,거짓)");
boolean b = true; ===> 소문자만 입력이 가능 -> True, TRUE(X)
boolean b2 = 2>3; ===> false (관계연산자를 통해서 값 저장이 가능하다.)
System.out.println("b=>" + b + ", b2=>" + b2);
System.out.println("문자형"); ===>char, String
char c1='A'; ===> 내부적으로 'A' -> 65로 저장된 상태
char c2=65; ===> 아스키 코드값 65를 저장하는것으로 생각하는것이다. int c2=65(연산이 가능한 그냥 숫자)
그렇다면, 16진수 형태로 입력을 받아서 문자를 저장 하는방법은?
=> 앞에 역슬러시 + u를 주면 된다 '\u0000' 또는 '\uFFFF'
각 방식을 이용 A 를 출력해본 결과이다.
c1, c2, c3 모두 A가 출력되는 것을 확인할수가 있다.
문자열은 문자 + 문자 이다. 문자열 + 문자열 또한 문자열이다. JAVA 자바 기초 문법인 문자열을 익혀보자.
빈 문자열은 문자열 내부에 공백이 들어가 있는 문자열이다. 연산자를 이용 문자를 한개의 문자열로 출력 할수있는 것을 확인할 수가 있다.
깨알팁_
정수는 아무리 커도 정수(long)이다. 하지만 실수는 엄청큰 정수 뒤에 소수점까지 붙일수있기때문에 실수(Float)가 더 크다.
자료형을 구지 비교를 해보자면
byte > short > int > long > float > double > char 순이다.
'JAVA-Spring > Data type, Operator' 카테고리의 다른 글
JAVA 프로그래밍 [산술, 증감 연산자] 개요 (0) | 2019.07.09 |
---|---|
JAVA 프로그래밍 [변수] 범위 (0) | 2019.07.09 |
JAVA 프로그래밍 [변수] 특성 (0) | 2019.07.09 |
JAVA 프로그래밍 [변수] 데이터 타입 2 소수점 (0) | 2019.07.09 |
JAVA 프로그래밍 [변수] 데이터 타입 1 (0) | 2019.07.09 |
댓글