Package org.qiunet.utils.args
Interface IArgsContainer
- All Known Implementing Classes:
ArgsContainer
public interface IArgsContainer
持有
ArgsContainer的对象. 可以实现该接口.
已经有大部分默认方法实现了- Author:
- qiunet 2020-08-26 07:59
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidclear(ArgumentKey key) 清除自身存储的数值default <T> booleancompareAndSet(ArgumentKey<T> key, T expect, T newVal) cas级别设置存储值default <T> TcomputeIfAbsent(ArgumentKey<T> key, Supplier<T> newVal) 如果没有.default <T> Argument<T>getArgument(ArgumentKey<T> key) 获取Argument没有会默认创建<T> Argument<T>getArgument(ArgumentKey<T> key, boolean computeIfAbsent) 获取Argument根据 @param computeIfAbsent 判断是否创建.default <T> TgetVal(ArgumentKey<T> key) 得到一个对象的值.default <T> TgetVal(ArgumentKey<T> key, T defaultVal) get 存储值.default booleanisNotNull(ArgumentKey key) 是否有存储值default booleanisNull(ArgumentKey key) 是否有存储值default voidremoveArg(ArgumentKey key) 删除自身default <T> TsetVal(ArgumentKey<T> key, T newVal) set 一个新的值.
-
Method Details
-
getArgument
获取Argument没有会默认创建- Type Parameters:
T-- Parameters:
key-- Returns:
-
getArgument
获取Argument根据 @param computeIfAbsent 判断是否创建.- Type Parameters:
T-- Parameters:
key-computeIfAbsent-- Returns:
-
removeArg
删除自身 -
clear
清除自身存储的数值 -
getVal
得到一个对象的值.- Type Parameters:
T-- Parameters:
key-- Returns:
-
setVal
set 一个新的值. 并返回旧值- Type Parameters:
T-- Parameters:
key-newVal-- Returns:
-
getVal
get 存储值. 没有返回默认的值. 避免null时候. 有空指针.- Type Parameters:
T-- Parameters:
key-defaultVal-- Returns:
-
compareAndSet
cas级别设置存储值- Type Parameters:
T-- Parameters:
key-expect-newVal-- Returns:
-
computeIfAbsent
如果没有. 就使用新的值set- Type Parameters:
T- 对象- Parameters:
key- keynewVal- 新的val- Returns:
- 有旧的返回旧的. 否则返回新的
-
isNull
是否有存储值- Returns:
-
isNotNull
是否有存储值- Returns:
-