Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[item #30] 항등 함수 예제 관련 #52

Open
hyojae93 opened this issue Dec 20, 2022 · 1 comment
Open

[item #30] 항등 함수 예제 관련 #52

hyojae93 opened this issue Dec 20, 2022 · 1 comment
Assignees

Comments

@hyojae93
Copy link
Collaborator

30-4 예제에 항등 함수를 사용하였기 때문에
타입에 안전 하다고 나와있는데 해당 예제가 어떤식으로 사용되어질지 잘 상상이 가지 않아서
항등 함수를 사용하지 않았을 때와의 차이점 예시를 들어주실 수 있을까요?

@Heezzan
Copy link
Collaborator

Heezzan commented Jan 4, 2023

항등함수는 모든 원소를 자기 자신으로 대응시키는 함수. 즉 f(x) = x 라 볼 수 있습니다.

30-4 예제에서 항등함수가 타입 안전하다고 한 이유는 항등함수의 성질 때문입니다. 자기 자신을 리턴하기 때문에 따라서 당연히 타입도 동일하게 됩니다. 따라서 apply 한 값의 타입인 T 와 UnaryOperator 의 타입이 동일하기 때문에 타입 안전하다고 하는 것으로 이해했습니다.

항등함수를 사용하지 않았을 때와의 차이점에 대한 질문이 정확히 이해되진 않았지만, 예를 들어 id 를 입력하면 id 에 해당하는 정보(회원, 책 등) 를 리턴하는 메서드가 존재하고 IDENTITY_FN 대신 저 메서드를 호출할 경우 리턴 타입을 예측할 수 없어 타입 안정성을 보장할 수 없을 것 같습니다. 그리고 꼭 항등함수의 구현이 아니더라도 UnaryOperator (입력과 리턴 타입이 동일한 함수형 인터페이스)를 사용하는 경우 타입 안전성이 보장될 것이라 생각합니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants