πŸ“˜ 221108 JAVA κ°œλ°œμΌμ§€ D+20 [ λžŒλ‹€μ™€ 슀트림 ]

rossiebiΒ·2022λ…„ 11μ›” 8일
0

πŸ’» JAVA κ°œλ°œμΌμ§€Β 

λͺ©λ‘ 보기
21/38
post-thumbnail

πŸ”” [ λžŒλ‹€μ‹ ] : ν•¨μˆ˜(λ©”μ„œλ“œ)λ₯Ό κ°„λ‹¨ν•œ μ‹μœΌλ‘œ ν‘œν˜„ν•˜λŠ” 방법

  • ν•¨μˆ˜ν˜• ν”„λ‘œκ·Έλž˜λ° : ν•¨μˆ˜λ₯Ό μ •μ˜ν•˜κ³  이 ν•¨μˆ˜λ₯Ό 데이터 μ²˜λ¦¬λΆ€λ‘œ 보내 데이터λ₯Ό μ²˜λ¦¬ν•˜λŠ” 기법

  • λžŒλ‹€μ‹ μ΄μš©μ‹œ μ½”λ“œκ°€ 맀우 간결해짐, μ»¬λ ‰μ…˜μš”μ†Œλ₯Ό 필터링 λ˜λŠ” λ§€ν•‘ν•΄μ„œ μ‰½κ²Œ 집계 κ°€λŠ₯

  • 읡λͺ…ν•¨μˆ˜λ₯Ό μƒμ„±ν•˜κΈ° μœ„ν•œ 식

  • λ§€κ°œνƒ€μž…μ€ λŸ°νƒ€μž„μ‹œμ— λŒ€μž…κ°’μ— 따라 μžλ™μœΌλ‘œ μΈμ‹ν•˜κΈ° λ•Œλ¬Έμ— μƒλž΅ κ°€λŠ₯

  • ν•˜λ‚˜μ˜ λ§€κ°œλ³€μˆ˜λ§Œ μžˆμ„ κ²½μš°μ—λŠ” κ΄„ν˜Έ μƒλž΅ κ°€λŠ₯

  • ν•˜λ‚˜μ˜ μ‹€ν–‰λ¬Έλ§Œ μžˆλ‹€λ©΄ μ€‘κ΄„ν˜Έ μƒλž΅ κ°€λŠ₯

  • λ§€κ°œλ³€μˆ˜κ°€ μ—†λ‹€λ©΄ κ΄„ν˜Έ μƒλž΅ λΆˆκ°€

  • 리턴값이 μžˆλŠ” 경우 returnλ¬Έ μ‚¬μš©

  • μ€‘κ΄„ν˜Έμ— return문만 μžˆμ„ 경우 μ€‘κ΄„ν˜Έ μƒλž΅ κ°€λŠ₯

  • λžŒλ‹€μ‹μ€ ν•˜λ‚˜μ˜ λ©”μ†Œλ“œλ₯Ό μ •μ˜ν•˜κΈ° λ•Œλ¬Έμ— ν•˜λ‚˜μ˜ μ΄ˆμƒλ©”μ†Œλ“œλ§Œ μ„ μ–Έλœ μΈν„°νŽ˜μ΄μŠ€λ§Œ νƒ€κ²Ÿ νƒ€μž…μ΄ 될 수 있음

πŸ”” [ ν‘œμ€€ API의 ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€ ]

  • μžλ°”8 λΆ€ν„° ν‘œμ€€ API둜 μ œκ³΅λ˜λŠ” ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
  • λ§€κ°œνƒ€μž…μœΌλ‘œ μ‚¬μš©λ˜μ–΄ λžŒλ‹€μ‹μ„ λ§€κ°œκ°’μœΌλ‘œ λŒ€μž…ν•  수 μžˆλ„λ‘ ν•΄μ€Œ

πŸ“’ μ’…λ₯˜

  • consumer ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
    : λ§€κ°œκ°’λ§Œ 있고 리턴값이 μ—†λŠ” μΆ”μƒλ©”μ„œλ“œλ₯Ό 가지고 있음
    말 κ·ΈλŒ€λ‘œ μ†ŒλΉ„λ§Œ 함.
    accept () λ©”μ†Œλ“œλ₯Ό 가지고 있음

πŸ“Œ 예제

  • supplier ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
    : λ§€κ°œκ°’μ€ μ—†κ³  λ¦¬ν„΄κ°’λ§Œ μžˆλŠ” μΆ”μƒλ©”μ„œλ“œλ₯Ό 가지고 있음
    말 κ·Έλž˜λ„ κ³΅κΈ‰λ§Œ 함
    λ§€κ°œλ³€μˆ˜κ°€ μ—†κ³ , 리턴값이 μžˆλŠ” getXXX() λ©”μ†Œλ“œλ₯Ό 가지고 있음

πŸ“Œ 예제

  • function ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
    : λ§€κ°œκ°’κ³Ό 리턴값이 λͺ¨λ‘ μžˆλŠ” μΆ”μƒλ©”μ„œλ“œλ₯Ό 가지고 있음
    주둜 λ§€κ°œκ°’μ„ λ¦¬ν„΄κ°’μœΌλ‘œ 맀핑할 κ²½μš°μ— μ‚¬μš©
    λ§€κ°œλ³€μˆ˜μ™€ 리턴값이 μžˆλŠ” apply λ©”μ†Œλ“œλ₯Ό 가지고 있음

  • operator ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
    : λ§€κ°œκ°’κ³Ό 리턴값이 λͺ¨λ‘ μžˆλŠ” μΆ”μƒλ©”μ„œλ“œλ₯Ό 가지고 있음
    function과의 차이점은 주둜 λ§€κ°œκ°’μ„ μ—°μ‚°ν•˜κ³  κ·Έ κ²°κ³Όλ₯Ό λ¦¬ν„΄ν• λ•Œ μ‚¬μš©
    λ§€κ°œλ³€μˆ˜μ™€ 리턴값이 μžˆλŠ” apply λ©”μ†Œλ“œλ₯Ό 가지고 있음
    주둜 λ§€κ°œκ°’μ„ μ΄μš©ν•΄μ„œ 연산을 μˆ˜ν–‰ν•œ ν›„ λ™μΌν•œ νƒ€μž…μœΌλ‘œ 리턴값을 μ œκ³΅ν•˜λŠ” 역할을 함

  • predicate ν•¨μˆ˜μ  μΈν„°νŽ˜μ΄μŠ€
    : λ§€κ°œκ°’μ„ μ‘°μ‚¬ν•΄μ„œ true λ˜λŠ” falseλ₯Ό λ¦¬ν„΄ν• λ•Œ μ‚¬μš©
    λ§€κ°œλ³€μˆ˜μ™€ boolean 리턴값이 μžˆλŠ” testXXX() λ©”μ†Œλ“œλ₯Ό 가지고 μžˆλ‹€.
    λ§€κ°œκ°’μ„ 쑰사해 true ν˜Ήμ€ falseλ₯Ό 리턴함

    πŸ”” [ λ©”μ†Œλ“œ μ°Έμ‘° ]

  • λ©”μ†Œλ“œλ₯Ό μ°Έμ‘°ν•΄μ„œ λ§€κ°œλ³€μˆ˜μ˜ 정보 및 λ¦¬ν„΄νƒ€μž…μ„ μ•Œμ•„λ‚΄μ–΄ λžŒλ‹€μ‹μ—μ„œ λΆˆν•„μš”ν•œ λ§€κ°œλ³€μˆ˜λ₯Ό μ œκ±°ν•˜λŠ” 것이 λͺ©μ 

πŸ”” [ Function νŒ¨ν‚€μ§€ ]

: 자주 μ‚¬μš©λ˜λŠ” λ‹€μ–‘ν•œ ν•¨μˆ˜ν˜• μΈν„°νŽ˜μ΄μŠ€ 제곡

πŸ”” [ 슀트림 ]

  • λ‹€μ–‘ν•œ 데이터 μ†ŒμŠ€λ₯Ό ν‘œμ€€ν™”λœ λ°©λ²•μœΌλ‘œ 닀루기 μœ„ν•œ 것

πŸ“’ 쀑간연산

  • μ—°μ‚°κ²°κ³Όκ°€ 슀트림인 μ—°μ‚°. 반볡적으둜 κ°€λŠ₯

πŸ“’ μ΅œμ’…μ—°μ‚°

  • μ—°μ‚°κ²°κ³Όκ°€ 슀트림이 μ•„λ‹Œ μ—°μ‚°. 단 ν•œλ²ˆλ§Œ μ μš©κ°€λŠ₯(슀트림의 μš”μ†Œλ₯Ό μ†Œλͺ¨)

πŸ“Œ

πŸ”” [ ]

πŸ“’

πŸ“Œ

πŸ”” [ ]

πŸ“’

πŸ“Œ

profile
λΉ„μ „κ³΅μž 개발자λ₯Ό κΏˆκΎΈλŠ” λ‘œμ§€

0개의 λŒ“κΈ€