inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)

18강. 코틀린에서 컬렉션을 함수형으로 다루는 방법

18강 map 질문

해결된 질문

331

as a service

작성한 질문수 2

1

val values = fruits.filter { fruit -> fruit.name == "사과" } .mapNotNull { fruit -> fruit.nullOrValue() }

 

nullable한 List에서 null이 아닌 element만 가지고 오는 mapNotNull중에서..

 

nullOrValue()는 임의로 만드신 확장함수인가요?

java kotlin 객체지향

답변 1

1

최태현

안녕하세요 민철님!! 질문 남겨주셔서 감사합니다! 🙂

강의에서 잠깐 스쳐지나가는 코드까지 정확히 봐주셨군요~~ 크으~~ 👍

nullOrValue() 는 사실 Fruit class에 만들어 둔 멤버 함수입니다!!

class Fruit {
  fun nullOrValue(): Int? {
    return ...
  }
}

이렇게 null 또는 null이 아닌 값을 준다는 의미로 mapNotNull 을 설명드리려고 만들어 두었어요!

mapNotNull 같은 경우는 주어진 람다에서 null이 나오는 경우는 무시한채, null이 아닌 원소만 모아주거든요!

 

nullOrValue()Int? 를 반환한다면, mapNotNull 의 결과는 List<Int> 가 되는 것이죠!

다만 말씀해주신 것처럼 nullOrValue를 확장함수로도 만들 수 있습니다!

 

궁금증이 해결되셨으면 좋겠습니다~~ 감사합니다! 🙇🙇

1

as a service

영상 내에서 특별한 언급이 없으셔서 내장 메소드인줄 알았습니다. 확인 감사함니다

0

최태현

메소드 이름이 특히나 nullOrValue() 였어서 확실히 내장 메소드 처럼 생겼네요!! 😭😭

다음부터는 조금 더 잘 설명해보겠습니다! 짚어주셔서 정말 감사합니다~~~!! 🙏

또 궁금한 점 있으시면 언제든 편하게 질문 남겨주세요!! 🙏

수업노트

0

57

1

싱글톤과 스프링

0

73

2

get() = 3

0

51

2

강사님

0

75

1

강의 복습하면서 생긴 질문

1

97

1

Kotlin과 Java의 현업에서의 활용

0

127

2

data class와 자바의 Lombok을 이용한 DTO 클래스 차이 질문

0

75

1

코틀린에서 상속 시, 주의점에 대한 질문

1

98

3

내용 이해 질문

0

58

1

자바와 코틀린의 함수형 프로그래밍,

1

91

1

플랫폼 타입 설명 문의

2

77

2

널 아님 단언 관련 질문

0

86

1

강의 중 질문

0

80

2

범위 비교 질문

1

93

2

타입캐스팅 궁금한점 질문드립니다.

1

239

2

코틀린 val 질문

0

167

2

완강 후 Kotlin 이런저런 질문 드려봅니다!

3

410

2

확장함수 스타일 질문

0

140

2

확장 프로퍼티 질문

1

158

1

update 함수를 만든다는게 어떤 의미인지 예시가 궁금합니다!

1

283

1

java class의 NotNull 어노테이션 인식

1

264

1

[16강] 확장함수 관련 질문입니다!

1

134

2

리턴타입 사용시 any를 사용해도 괜찮은가요?

1

142

1

안녕하세요 scope function 에 receiver 가 없는 경우

1

172

1