๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Spring

[Java] List ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ

by young-ji 2022. 12. 1.

 

๋ฆฌ๋ทฐ ๋ฐ›์•˜๋‹ค๐Ÿคฃ

 

https://jihyehwang09.github.io/2020/04/13/java-list-null-check/

 

List.size() == 0 ๋ณด๋‹ค๋Š” List.isEmpty()

ํ”ผ๋“œ๋ฐฑ ๋ฐ›์€ ๊ฒƒ๊ณผ ๊ฐ™์ด isEmpty๊ฐ€ ๊ฐ€๋…์„ฑ๋ฉด์— ์ง๊ด€์ ์ด๋‹ค.

๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, list์˜ ์‚ฌ์ด์ฆˆ๊ฐ€ 0์ด ์•„๋‹๊ฒฝ์šฐ size() ๋ฉ”์†Œ๋“œ๋Š” O(n)์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— isEmpty() ๋ณด๋‹ค ๋น„์šฉ์ด ๋งŽ์ด ๋“ ๋‹ค. (isEmpty()๋Š” O(1)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„)

 

 

List null ์ฒดํฌ

Java Spring ์‚ฌ์šฉ์‹œ์—๋Š” ์•„ํŒŒ์น˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ CollectionUtils.isEmpty()๋ฅผ ์‚ฌ์šฉํ•˜์ž.

import org.springframework.util.CollectionUtils;

public class Main {

    public static void main(String[] args) {
        List<Email> emailList = new ArrayList<>();

        System.out.println(CollectionUtils.isEmpty(emailList)); // true
    }
}

 

Collection ํŒŒ๋ผ๋ฏธํ„ฐ์— ๋Œ€ํ•œ null ์ฒดํฌ๋ฅผ ํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์— NPE์— ์ข€ ๋” ์•ˆ์ „ํ•œ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ ํ•ด์ค„์ˆ˜์žˆ๋‹ค.

 

 

 

 

์ž˜๋ชป๋œ ์ •๋ณด๊ฐ€ ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€์„ ํ†ตํ•ด ์•Œ๋ ค์ฃผ์„ธ์š”. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. 

๋Œ“๊ธ€