![JAR search and dependency download from the Maven repository](/logo.png)
xdean.jex.extra.LazyValue Maven / Gradle / Ivy
The newest version!
package xdean.jex.extra;
import java.util.function.Supplier;
public class LazyValue {
public static LazyValue create(Supplier supplier) {
return new LazyValue<>(supplier);
}
private Supplier creater;
private boolean calculated = false;
private T value = null;
private LazyValue(Supplier supplier) {
creater = supplier;
}
public T get() {
if (calculated == false) {
synchronized (this) {
if (calculated == false) {
value = creater.get();
creater = null;
calculated = true;
}
}
}
return value;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy