forked from plusone/plusone-commons
修改、新增方法
parent
9a0b6404cb
commit
3d5a3ddbee
|
@ -1,6 +1,7 @@
|
|||
package xyz.zhouxy.plusone.commons.base;
|
||||
|
||||
import java.util.Objects;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.UnaryOperator;
|
||||
|
||||
import com.google.common.annotations.Beta;
|
||||
|
@ -10,6 +11,10 @@ public final class Ref<T> {
|
|||
|
||||
private T value;
|
||||
|
||||
public Ref() {
|
||||
this.value = null;
|
||||
}
|
||||
|
||||
public Ref(T value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
@ -22,10 +27,22 @@ public final class Ref<T> {
|
|||
this.value = value;
|
||||
}
|
||||
|
||||
public void apply(UnaryOperator<T> operator) {
|
||||
public void transform(UnaryOperator<T> operator) {
|
||||
this.value = operator.apply(this.value);
|
||||
}
|
||||
|
||||
public boolean isNull() {
|
||||
return this.value == null;
|
||||
}
|
||||
|
||||
public boolean isNotNull() {
|
||||
return this.value != null;
|
||||
}
|
||||
|
||||
public void execute(Consumer<T> consumer) {
|
||||
consumer.accept(value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format("Ref[%s]", value);
|
||||
|
|
|
@ -24,7 +24,7 @@ class RefTests {
|
|||
}
|
||||
|
||||
void apply(Ref<String> strRef) {
|
||||
strRef.apply(str -> "Hello " + str);
|
||||
strRef.transform(str -> "Hello " + str);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
Loading…
Reference in New Issue