Optional 선언하기 (빈 Optional, NULL 가능 여부에 따른 Optioanl)

반응형
728x90
반응형

참고 DTO

package dto.Product;

import java.util.Optional;

public class Person {
    private int idx;
    private String personName;
    private Optional<Job> job;

    public int getIdx() {
        return idx;
    }

    public void setIdx(int idx) {
        this.idx = idx;
    }

    public String getPersonName() {
        return personName;
    }

    public void setPersonName(String personName) {
        this.personName = personName;
    }

    public Optional<Job> getJob() {
        return job;
    }

    public void setJob(Optional<Job> job) {
        this.job = job;
    }

    public Person(int idx, String personName) {
        this.idx = idx;
        this.personName = personName;
    }
}

 

 

1) 빈 Optioanl

Optional<Product> product = Optional.empty();

 

 

2) null 이 아닌 Optional

아래 코드에서 product1 이 NULL 이라면 NullPointerException 이 발생한다.

Product product1 = new Product(0, "Note_red", 1, 100);
Optional<Product> product2 = Optional.of(product1);

 

 

3) null 가능한 Optional

아래 코드에서 product13이 NULL 이라면 빈 Optional 객체가 반환된다.

Product product3 = null;
Optional<Product> product4 = Optional.ofNullable(product3);

 

반응형

Designed by JB FACTORY