17
:: (เครื่องหมายทวิภาคคู่) ใน Java 8
ฉันสำรวจแหล่งJava 8และพบว่าส่วนหนึ่งของรหัสนี้น่าประหลาดใจมาก: //defined in IntPipeline.java @Override public final OptionalInt reduce(IntBinaryOperator op) { return evaluate(ReduceOps.makeInt(op)); } @Override public final OptionalInt max() { return reduce(Math::max); //this is the gotcha line } //defined in Math.java public static int max(int a, int b) { return (a >= b) ? a : b; } เป็นMath::maxเหมือนตัวชี้วิธีการหรือไม่ …