Java문법 썸네일형 리스트형 제네릭에 extends Number를 해도 사칙연산이 안되는 이유 과제를 수행하다가 제네릭에서 타입에 extends를 걸 수 있다는 사실을 알았습니다.그래서 이전에 제네릭 타입T에 사칙연산을 해줄 수 없어서 형변환을 아래와 같은 방식으로 만들어 주었는데double number1 = Double.parseDouble(positiveNumber1.toString());아그럼이제 그럴 필요 없겠다! 생각을했습니다. 하지만 여전히 "연자사 '+' 를 "T","T"에 적용할 수 없습니다. 라는 에러가 발생하였고, 엥? 똑같이 안되네? 하고 왜 안되는건지 찾아봤습니다. 일단의 진짜 의미는 T는 Number의 하위 타입이다. 즉 T는 아래 중 하나 일 수 있습니다 :Integer Double Long BigDecimal AtomicInteger Byte Short ... 하지만!.. 더보기 이중콜론(::)(매서드 참조)표현식 다른 팀원들과 코드 리뷰 해보던 중 팀원 코드에서 Double::sum이런 식의 코드를 발견하였다. 이게 뭔지 여쭤보니 AI랑 블로그 짬뽕해서 만들어서 정확히 모르겠다 하셔서 이게 뭔지 조금 더 공부를 해보았습니다. 인단 문법은인스턴스명::메서드명위와 같은 표현방식을 이용한다고 합니다.사실 이게 뭐냐면 우리가 람다식을 사용할때(a, b) -> calculate.sum(a, b);이런식으료 표현을 하는데 이를 sum으로 보내는 매개 변수를 이미 이전 결과에서 알고 있고 똑같은 행위가 map이나 forEach등에서 반복적으로 사용될때 사용한다고 합니다. 즉,calculate::sum이런식으로 작성하면 이전에 받은 결과들을 sum함수에 매개변수로 전달을 해준다는 의미 라고 이해했습니다.적용 전 --stream.. 더보기 이전 1 다음