TIL: 2024/05/08 - Java Etc.

White 와잇·2024년 5월 8일

TIL

목록 보기
14/40
post-thumbnail

1. 자주 찾게되는 정보 요약

자바 프로젝트를 진행하며 자주 열람하게 되는 정보들을 정리하였다.

StringBuilder

  • 사용 이유:
    String + String + String + ... 를 사용하면 많은 String 객체들이 메모리에 할당되어야 해서 결국 할당과 해제가 많아져서 성능부담이 커진다.

  • String이랑 StringBuilder 차이:
    String은 변경 불가능한 문자열 객체를 생성한다.
    StringBuilder는 변경 가능한 문자열 객체를 생성한다.

  • 사용법:
    StringBuilder 객체에 .append("문자열")로 문자열을 만들어나간다.
    String으로 변환하려면 .toString()을 사용

  • 활용: (자주 사용함)
    배열, 리스트 등의 컬렉션을 돌며 전부 출력하는 코드에서 ',' 등으로 구분해줄 때 발생하는 문제 -> 마지막에 ','를 없애고 싶음

StringBuilder stringbuilder = new StringBuilder();
for (String str : list)
{
    stringbuilder.append(str).append(",");
}
String str = stringbuilder.toString();
str.substring(0, str.length() - 1); // substring으로 마지막 한 문자 제거

length, length(), size()

자주 사용하지만 헷갈림

  • length: 배열
  • length(): 문자열
  • size(): 컬렉션

자주 사용되는 예외 클래스

  • NullPointerException(NPE): 객체가 (null인데) 접근 연산자 사용, [null].()
  • ArrayIndexOutOfBoundsException: 잘못된 배열 인덱스 접근
  • NumberFormatException: 문자 -> 숫자 변환시 숫자로 변경할 수 없음, 주로 Integer.parseInt(sc.next());에서 발생
  • ClassCastException: 클래스 타입 변환이 불가능한 경우

2. 프로젝트 피드백 요약

  • 팀 끼리의 커밋 컨벤션, 코드 컨벤션 정하면 좋다
  • 코드 컨벤션: 변수명-메서드명 규칙, 반복문-조건문의 사용 규칙 등 코드에서 생길만한 선택 이슈 방지
  • 커밋 컨벤션: 추천 페이지
  • 리팩터링: 꾸준히 코드를 매만지는 중..
profile
웹개발 도전! 데브옵스 도전!

0개의 댓글