변수 타입 / 문자와 문자열 / 형변환 / 연산자 / 산술변환 / 비트연산

고은아·2023년 5월 24일
0

TIL

목록 보기
2/49

변수 타입, 연산자 숙지가 원활하지 않다. 기록하고서 반복적으로 보며 익숙해질 생각이다. 알아가면 알아갈수록 반복이 답이라는 생각이 든다.

int number

  • int = 저장공간 타입 (접시 종류)
  • number = 저장공간 이름 (접시 이름)

변수 타입

기본형 변수

  1. 논리형 변수 boolean = t1 f0
  2. 문자형 변수 char = 문자 하나만 ! / 'A' '1'
  3. 정수형 변수 byte short int long(L) = 정수형 숫자값 / 0 1

4. 실수형 변수 float(F) double = 소수점 실수값 / 0.12 0.93

참조형 변수 (원본값의 주소값 저장)

  1. 문자열 변수 string = 텍스트와 같은 문장만 저장 ! / "Apple" "Hello world"
  2. 그 외 Object 객체 / Array 배열 / List 리스트

래퍼 클래스 변수 = 기본형 변수 한번 감싸는 함수 (박싱 / 언박싱)

기본 타입래퍼 클래스
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean

문자와 문자열 (기본형과 참조형)

  1. 선언 관점
  • 문자형 char = 문자 하나만 ! / ''
  • 문자열 String = 문자 여러개 ! 문장만 저장 ! / ""
  1. 저장 관점
  • 문자형 char = 널문자 X

  • 문자열 String = 널문자 O

  • import = im(in) + port(항구) = 수입

  • 참조형 변수 = 원본값 > 힙영역 / 주소값 > 스택영역

  • 8bit = 1byte -> 2short -> 4int -> 8long -> 4float -> 8double

형변환

  • Double Float -> Int (실수 -> 정수)
    double doubleNumber = 10.101010;
    float floatNumber = 10.1010
    
    int intNumber;
    intNumber = (int)doubleNumber; // double -> int 형변환
    intNumber = (int)floatNumber; // float -> int 형변환
  • Int -> Double Float (정수 -> 실수)
    int intNumber = 10;
    
    double doubleNumber = (double)intNumber; // int -> double 형변환
    float floatNumber = (float)intNumber;  // int -> float 형변환
    • 자동 형변환 = 작은 타입 -> 큰 타입 (자동 형변환)
    • 강제 형변환 = 큰 타입 -> 작은 타입 (강제 형변환 = 캐스팅)

계산하기 (연산자)

  • 계산의 대상 = 피연산자 (2 + 1 / 2 1)

  • 계산의 목적 = 연산자 (2 + 1 / +)

  • 산술 연산자 = + - * / % << >>

  • 비교 연산자 = > < >= <= == !=

  • 논리 연산자 = && || ! (AND OR NOT)

  • 대입 연산자 = = ++ —-

    • 기본 대입 연산자 = + - * / %
    • 복합 대입 연산자 = += -= *= /= %=
    • ++ -- 대입 연산자
  • 기타 연산자 = (type) ? : instance of (형변환 연산자, 삼항 연산자, instance of 연산자)

    • 형변환 연산자

      // 형변환 연산자
      int intNumber = 93 + (int) 98.8; // 93 + 98
      
      double doubleNumber = (double) 93 + 98.8; // 93.0 + 98.8
    • 삼항 연산자 / (조건) ? (참결과) : (거짓결과)

      // 삼항 연산자
      int x = 1;
      int y = 9;
      
      boolean b = (x == y) ? true : false;
      System.out.println(b); // false
      
      String s = (x != y) ? "정답" : "땡";
      System.out.println(s); // 정답
      
      int max = (x > y) ? x : y;
      System.out.println(max); // 9
      
      int min = (x < y) ? x : y;
      System.out.println(min); // 1
    • instance of 연산자 / (객체명) instance of (클래스명)

산술변환

= 연산 전에 (크기가 큰)피연산자의 타입으로 일치

  • int보다 작은 short타입이면 int
  • long보다 작은 int short타입이면 long
  • float보다 작은 long int short타입이면 float
  • double보다 작은 flaot long int short타입이면 double

비트연산

= Bit 자리수 옮기는 것

  • <<(왼쪽으로 자리수 옮기기) / >>(오른쪽으로 자리수 옮기기)

0개의 댓글

관련 채용 정보