Java 8-2
9068 ワード
java.util.function
JAvaユーティリティ関数
Oracleで提供されるJavaユーティリティ関数のドキュメント.
スキャン
private void run (){
//java 8 이전의 버전에서는 final이 붙어있어야 되었다.
int baseNum = 10;
//1. 로컬 클래스
class LocalClass {
void printBaseNum(){
int baseNum = 11;
System.out.println(baseNum);
}
}
//2. 익명 클래스
Comsumer<Integer> integerComsumer = new Comsumer<Integer>(){
@Override
public void accept(Integer integer) {
//만약 integer변수 이름을 baseNum으로 변경하게 되면
// 아래의 baseNum은 더이상 맨위의 10값을 가진 baseNum을 가르키지 않는다.
System.out.println(baseNum);
}
}
//3. 람다
IntComsumer printInt = (i) -> {
System.out.println(i + baseNum);
};
printInt.accept(10);
//4 아래와 같이 증가를 하면 effective final 변수가 아니라서
// 참조할수없다.
baseNum ++;
}
10
はブロックされ、11となる.int baseNum = 10
と同じ顕微鏡があるので隠したくない.(同じスキャン方式なのでbaseNum変数は計測できません.)方法の研究
public class Greeting{
private String name;
public Greeting(){
}
public Greeting(String name) {
this.name = name;
}
public String hello(String name) {
return "hello" + name;
}
public static String hi(String name) {
return "hi" + name;
}
}
...
public static void main(){
// Greeting greeting = new Greeting();
// UnaryOperator<String> hello = greeting::hello;
// 입력값은 없는데 리턴을 할때 -> Supplier 사용
Supplier<Greeting> newGreeting = Greeting::new;
newGreeting.get();
Function<String, Greeting> twoGreeting = Greeting::new;
}
これは挨拶静的メソッドを参照する方法です.타입::스테틱 메소드
Reference
この問題について(Java 8-2), 我々は、より多くの情報をここで見つけました https://velog.io/@ehgks0000/Java-8-2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol