02. 데이터 활용

Wendy·2020년 6월 9일
0
post-thumbnail

[리뷰] 처음 해보는 자바 프로그래밍 - 02. 데이터 활용

내용 정리

2.1 변수 기본

2.1.2 변수선언

  • 표기법
    - Camel Case : thisIsCamelCase (java 변수, 함수명)
    - Pascal Case : ThisIsPascalCase (java 클래스명)
    - Snake Case : this_is_snake_case

2.1.3 변수에 데이터 저장

  • 리터럴(literal) : 변수에 저장되는 값 자체를 의미
  • 초기화 : 선언한 변수에 최초로 데이터를 저장

2.2 데이터 종류

2.2.1 논리 타입

  • boolean, 1byte

2.2.2 문자 타입

  • char, 2byte, 한 글자, 작은따옴표('')
  • 언어별 특수문자 (escape sequence) - \n, \t, \...
  • 유니코드 : 언어상관없이 부여된 체계, 65,536글자, \u다음에 코드 지정
  • 문자열 : string, 큰따옴표("")

2.2.3 정수 타입

  • byte(1byte), short(2byte), int(4byte), long(8byte)
  • long 초기화 시 숫자 끝에 L을 붙여주어야 long 타입 처리
long a = 2147383648; // 컴파일 오류

값을 변수에 저장하기 전 임시로 메모리에 저장할때 int를 사용하는데 리터럴값이 int 범위를 초과해서 에러발생. 2147383648L 로 써야함

2.2.4 실수 타입

  • float(1+3 = 4byte), double(1+7 = 8byte)
  • 지수+기수로 분리 저장 ex) 12.3456 => 0.123456(기수) * 10의 2승 (지수)
  • float 초기화 시 숫자 끝에 F/f 사용
float rate = 1136.50; //컴파일 오류 

값을 변수에 저장하기 전 임시로 메모리에 저장할때 double을 사용하는데 8byte double 타입을 4byte float변수에 대입하려니 공간이 좁아 오류 발생. 1136.50f 로 써야함.

2.2.5 참조 타입

  • 기본 데이터 타입 : boolean, char, byte, short, int, long, float, double
  • 참조 데이터 타입 : 메모리 위치를 저장하는 타입 (위의 8가지 제외 나머지 전체)

2.3 데이터 연산

2.3.4 부호연산자

  • 부호 변경은 int타입으로 처리
short e = 10; 
short f = -e; //컴파일 오류

-e 가 부호변경으로 4 byte int가 되면서 2byte short 변수에 대입하려니 발생하는 오류. 변수 f를 int로 변경해서 해결.

2.3.6 논리연산자

  • A && B, A || B 는 앞의 조건으로 결론이 나는 경우 뒤에 조건은 수행하지 않음

2.4 데이터 타입 변환

  • 자동 변경 : 작은 타입의 데이터를 큰 타입의 변수에 저장하는 경우
  • 직접 변경 : (타입) 변수명; 으로 타입캐스팅
  • 연산자를 이용해 숫자를 연산할때 정수는 int 타입으로 변환되어 연산을 수행
byte i = 10; 
byte j = 20;
byte k  = i + j; // 컴파일 오류

연산 후 int로 변경된 값을 byte에 대입하려고 하여 오류. byte k = (byte)(i + j); 로 수정해야 함

학습 후기

알고리즘 문제풀이시, 혹은 비지니스 코드 작성 시 가끔씩 이런 쪽에서 빨간줄이 뜨면 강제로 이것저것 캐스팅 해보거나 타입을 바꾸거나 했는데 왜 에러가 났던건지 이해가 되었다!! 또 데이터 타입은 어느정도 알고있었으나 정확하게 정리가 되어있어서 복습이 되었다.

profile
개발 공부중!

0개의 댓글