강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của roberts
roberts

câu hỏi đã được viết

Hướng dẫn dành cho người mới bắt đầu sử dụng Java và Kotlin

Bài 2. Cách xử lý null trong Kotlin

널 아님 단언 관련 질문

Đã giải quyết

Viết

·

75

0

태현님! 안녕하세요, 먼저 이런 좋은 강의를 만들어 주셔서 감사드립니다 🙂

다만, 듣다가 또 하나의 질문이 있어서 말씀드리고 싶습니다! 바로 널 아님 단언 관련입니다!
예제 코드에서는 아래와 같이 작성을 해주셨는데요!

fun startsWith(str: String?): Boolean {
    return str!!.startsWith("A")
}

이런 경우 str 파라미터가 null이 들어올 가능성이 있지만 해당 코드를 실행할때 null이 절대 아니야라고 명시적으로 표현하기 위하여 !!를 붙여준다고 이해했습니다!

다만, 이런 경우는 굳이 널 아님 단언을 사용하는게 아니라 파라미터의 String?타입을 String으로 두면 어떨까 싶은 생각이 들어서요! 이렇게 된다면 굳이 널 아님 단언을 사용할 필요가 없어 보이는데 다른 곳에서 사용하는 예시가 따로 있는지 궁금하여 질문을 드리게 되었습니다!

javakotlin객체지향

Câu trả lời 1

1

lannstark님의 프로필 이미지
lannstark
Người chia sẻ kiến thức

안녕하세요 성빈님! 🙂 언제나 환영합니다.

 

넵! 말씀해주신 것처럼 해당 필드가 절대 null이 아니면 처음부터 String 으로 선언하면 되겠지만

  • [시점에 따라] 처음 DB에 저장되었을 때는 비워두고 나중에 데이터를 채운다거나

  • [타입에 따라] 하나의 데이터가 A 유형일 때는 필수값이고 B 유형일 때는 선택값이라 A 유형을 처리하는 경우에만 null이 아니라거나...

하는 경우가 있다 보니 !! 이란 것은 "절대 이 경우 null이 아님을 밝히기 위한" 용도로 쓸 수 있다는 의미였습니다.

 

답변이 도움이 되었으면 좋겠습니다. 감사합니다. 🙏

roberts님의 프로필 이미지
roberts
Người đặt câu hỏi

태현님 답변 감사드립니다!

Hình ảnh hồ sơ của roberts
roberts

câu hỏi đã được viết

Đặt câu hỏi