[TIL] 2023년 2월 12일

susu·2023년 2월 12일
0

Algorithm & Coding Test

목록 보기
1/6
post-thumbnail

📌 자바의 자료형 - Primitive vs Reference

Primitive Type (기본형)

자바에서 기본적으로 제공하는 자료형으로, 총 8가지가 있다.
(boolean, byte, short, int(기본), long, float, double, char)

  • 기본값이 있기 때문에 null값이 발생하지 않는다.
  • 실제 값을 저장하는 공간으로 스택(Stack) 상에 저장된다.
  • 컴파일 시점에 표현 가능한 크기를 벗어나면 컴파일 에러가 발생한다.

Reference Type (참조형)

기본형을 제외한 모든 자료형을 의미한다.

  • 빈 객체를 의미하는 Null이 존재한다.
  • 주소값이 저장되는 힙 영역에 저장된다.
  • 문법상으로는 에러가 없어도, 실행시 런타임 에러가 발생할 수 있다.

📌 배열을 리스트로 변환하는 방법

기본형 배열의 경우에는 ArrayList나 Arrays.asList() 메소드를 사용할 수 없고,
for문을 돌며 추가해줘야 한다.

// String[] strArr, int[] intArr
List<String> strList = Arrays.asList(strArr);

// intArr는 Primitive 타입(int) 이므로 for문 이용
List<Integer> intList = new ArrayList<Integer>();
for (int i : intArr) intList.add(i);

📌 길이 구하기 - length, length(), size()

length

int[] intArr = {1, 2, 3};
System.out.println(intArr.length); //3

배열의 길이를 리턴한다.

length()

String testStr = "forestella";
System.out.println(testStr.length()); //10

문자열의 길이를 리턴한다.

size()

ArrayList<Integer> testList = new ArrayList<>();
testList.add(1);
testList.add(2);
testList.add(3);

System.out.println(testList.size()); //3

컬렉션(Collection) 타입의 길이를 리턴한다.

📌 리스트에서 특정 값만 삭제, 값이 숫자일 때?

리스트.remove(뫄)

뫄 자리에는 인덱스와 값 모두 들어갈 수 있지만,
값이 숫자인 경우 인덱스로 인식된다.

⭐️ 이런 경우 값을 Integer 객체 타입으로 선언해주어야 숫자를 값으로 인식한다.

reserveList.remove(1); //1을 인덱스로 인식한다.

reserveList.remove((Integer)(1)); //객체별 제거 -> 1을 값으로 인식한다.

📌 자바의 향상된 for문

ArrayList<String> letter = new ArrayList<>();

for (String l : letter) { // 리스트 letter 내의 요소들을 하나씩 대입하며 진행
	...
}

잡담

노션에 쓰면 다시 안 보게 돼서 TIL을 작성해보기로 했다.
그래도 자바를 웬만큼 쓸 수 있다고 생각했는데 기초부터 부족하다는 걸 느꼈다 😅
그리고 파이썬보다는 확실히 번거로운 느낌이다.
이런 기본적인 내용도 시험장에서 생각이 안 나면 낭패라서 다 기록해두고 꼭꼭 씹어먹으며 기억하기로~

늦게 시작한 만큼 꾸준히 이어가는 게 목표다.
취준 화이팅~!

profile
블로그 이사했습니다 ✈ https://jennairlines.tistory.com

0개의 댓글