강사님 람다식 변수 질문드립니다.
382
작성한 질문수 5
람다식에서 사용되는 변수는 상수여아 한다고 강의를 해주셨는데요
public class FromIntRange {
public static int sum;
public static void main(String[] args) {
IntStream stream = IntStream.rangeClosed(1, 100);
stream.forEach(a -> sum += a);
System.out.println("총합 : " + sum);
}
}
위 예제에서 sum은 상수가 아닌데 오류가 안 나더라고요
실험삼아 public static int sum을
int sum으로 수정하고 main 메소드 안에다가 넣었더니
상수만 사용가능하다고 에러가 뜹니다.
너무 헷갈리네요 ㅠㅠ 어떻게 된건가요?
답변 1
1
람다 본문에서 밖에 있는 변수들 중에 local 변수랑 static 변수를 참조할 수 있는데 그 중에 local 변수는 사실상 final 이거나 명시적으로 final인 것만 참조할 수 있습니다.
CompletableFuture의 get 실행에 대해 궁금한 점이 있습니다
0
238
2
기본 인터페이스의 기본 제공 메서드 관련 질문 (왜 이걸 사용하는지)
0
525
2
static 과 metaspace 관련 질문있습니다.
0
718
0
Map의 가장 큰 특징이 key는 null이 아니다
0
2392
2
Optional 질문드립니다.
0
479
0
인텔리제이 콘솔창
0
586
0
Supplier를 쓰는 이유
0
1369
1
allOf()에서 컬렉션으로 반환하는 것을 설명할 때 코드
0
714
1
[참고] LTS주기
0
479
1
orElseThrow()
1
1098
2
findFirst함수
0
363
1
메서드 레퍼런스
1
482
1
primitive type 질문
0
312
1
FunctionalInterface 상속 관계 질문
0
295
1
함수형 인터페이스를 왜 사용하나요?
1
503
1
while문 세미콜론
0
439
1
flatMap Optional과 Stream에서의 차이점을 제가 잘 이해했는지 헷갈립니다!
0
416
1
람다식과 익명 클래스
0
330
1
steam api 예제 git 주소
3
788
1
thread.sleep질문
0
396
2
.orElse 매개변수 질문
0
267
1
isPresent( ) 와 null 질문
0
340
1
예제 코드 질문
2
293
1
코드 질문있습니다.
0
239
1





