Day13

두윤기·2023년 1월 13일
0
post-thumbnail

복습

> API

java.lang

  • Object
    • 모든 Class의 조상
    • 다양한 type의 class를 upcasting하여 저장할 수 있음
    • equals
  • String
    • new 없이 object 생성 가능 String name = "Doo";
    • length(), equals(b), equalsIgnoreCase(b), compareTo(b), compareToIgnoreCase(b), substring(,), charAt(), startsWith(), trim(), contains(), indexOf()
    • Regular Expression

문제풀이

  • connection을 지정해주고 싶을 땐, 변수를 사용해서 regex를 구성하면 된다.
    (regex는 변수를 포함하여 설정할 수 있다.)
  String connector = "/";
  String regex =
    "^(19[0-9]{2}|20[0-9]{2})" + connector + "(0[0-9]|1[012])-([0-3][0-9]|31)$";

Regex

String

  • String.valueOf() (Integer.toString())

Wrapper Class

  • 원시형 data에 필요한 기능을 제공하는 class
  • 전부 java.lang package에 있음
  • Boolean
  • Byte
  • Short
  • Integer
    • Integer.parseInt();
  • Long
  • Float
  • Double
  • Character

Java.lang

> StringBuffer

method

  • .append()
  • .length()
  • .delete(int start, int end)
  • .substring(int start, int end)
  • .indexOf(String str, int fromIndex)
  • .replace(int start, int end, String str)
  • StringBuffer.reverse()

thread-safe

  • 다중 동시 사용자 환경에서도 안전성이 보장된 구조
  • 자원에 다양한 대상이 접근할 수 있을 경우

> StringBuilder

non-thread-safe

  • 대기줄을 세우지 않고 동시다발적으로 처리하는 구조

> Math

field

  • Math.PI: 원주율
  • Math.E: 자연지수

method

  • Math.round(): 반올림

  • Math.floor(): 내림

  • Math.ceil: 올림

  • Math.abs(): 절댓값

  • Math.max(a, b): a와 b중 큰 값

  • Math.pow(a, ladix): power

  • Math.random(): 0 <= random < 1

> System

  • class에 final keyword가 붙으면 상속이 불가능
  • System.in // 표준 입력 stream
  • System.out // 표준 출력 stream
  • System.err // 표준 오류 stream
  • System.exit(0): 프로그램 종료 (0 정상종료, 그외 비정상종료)
  • System.getProperties(): program 외부환경 (OS)에 대한 정보 및 기능 출력
  • System.getProperty("os.name")

> Runtime

  • 외부환경과 소통할 수 있음
  • Runtime r = Runtime.getRuntime()
  • r.exec(""): CLI에 명령 입력

예외 (Exception)

> 1/n 계산기

try {} catch(ErrorClass e) {} (throw 예외 던지기)

  try {
    if(/* error 발생 조건 */) {
      throw new Exception("message");
    }
  } catch (Exception e) {
    e.printStackTrace();
  }

stackTrace

  • 오류가 뜰 때, 오류가 발생한 시점을 trace하는 형식

Try-with-resources

try에 자원 객체를 전달하면, try code block이 끝나면 자동으로 resource를 종료해주는 기능

  try ( Scanner sc = new Scanner(System.in); ) {
    ~~
  } catch ( Exception e ) {
    e.printStackTrace();
  }

throws Exception (예외 처리 미루기)

  • 해당 method 안에서 발생한 예외 처리에 대한 책임을 method를 호출한 쪽으로 떠넘김
  • 호출하는 입장에서 선언된 예외를 보고 발생할 수 있는 예외를 미리 파악할 수 있고, 반드시 처리해야 하므로 프로그램 견고하게 한다.

Throwable

  • Error + Exception
  • Error: 실행 전(compile 단계)에서 검출
  • Exception: runtime에서 발생
profile
programmerD

0개의 댓글