Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- ExoPlayer
- android custom view
- video caching
- ktor api call
- 스피너
- DiffUtil.ItemCallback
- 시행착오
- ListAdapter
- ktor client
- list map
- ansi2html
- kotlin collection
- doc2vec
- getChangePayload
- Python
- build with ai
- exoplayer cache
- ListAdapter DiffUtil
- ChatGPT
- android ktor
- android
- android exoplayer
- kotlin list
- llm
- AWS EC2
- 안드로이드
- map
- 독서
- 유튜브
- FastAPI
Archives
- Today
- Total
버튼 수집상
[CS] predicate란 본문
https://en.wikipedia.org/wiki/Functional_predicate
functional predicate, 혹은 function symbol
즉, 논리 연산자
https://www.baeldung.com/cs/predicates
predicate란 여러 인자를 받아서 boolean을 리턴하는 함수를 말한다.
boolean predicate(set_of_parameters)
predicate란 문장에서 동사를 포함하면서 주어에 대해 서술하는 부분이다. 예를 들어 Mike is eating 마이크는 먹는 중이다 에서 주어는 마이크, 술어는 먹는 중이다, 이다. 하지만 컴퓨터공학의 관점에서 predicate란 어떤 작업을 수행할지 말지 알기 위해 true / false 조건을 체크하는 것이다.
Person mike;
if (!mike.isEating())
feedPerson(mike);
Person의 인스턴스 mike의 멤버함수인 isEating()은 predicate이다. 이 함수는 person 인스턴스 (이 경우엔 mike)가 먹는 중인지 여부에 따라 true 혹은 false를 리턴한다.
predicate은 주로 콜백의 형태로 쓰이지만 일반적으로 참거짓을 판별해서 boolean을 리턴하는 함수라면 모두 predicate라고 부를 수 있다.
함수 명세를 보다가 predicate란 단어가 직관적으로 이해되지 않아서 용례를 찾아봤다.
fun main(){
val listOfNumbers = listOf(10,3,45,90,1,22,1000)
val filtered = listOfNumbers.filter{ x -> x < 50 }
print(filtered)
}
예시의 경우, filter 블럭의 람다 함수를 predicate이라고 부를 수 있다.
728x90
'TIL - CS' 카테고리의 다른 글
[CS] mounting이란 (0) | 2024.01.30 |
---|---|
[CS] 정규표현식 Basic Regex (1) | 2024.01.11 |
[CS] payload란 (0) | 2023.07.13 |
[CS] heuristic이란 (0) | 2023.07.11 |