String を受け入れるメソッドがあり、clientid
以下の要件があります。
clientid
ゼロより大きい正の数にすることができます。ただし、負の数またはゼロの場合はIllegalArgumentException
、メッセージとともにスローします。clientid
null
または空の文字列にすることはできません。しかし、そうであればIllegalArgumentException
、メッセージを投げてください。clientid
通常の文字列でもかまいません。たとえば、abcdefgh
またはその他の文字列にすることができます。
import static com.google.common.base.Preconditions.checkArgument;
public Builder setClientId(String clientid) {
checkArgument(!Strings.isNullOrEmpty(clientid), "clientid cannot not be null or an empty string, found '%s'.",
clientid);
final Long id = Longs.tryParse(clientid);
if (id != null) {
checkArgument(id.longValue() > 0, "clientid must not be negative or zero, found '%s'.", clientid);
}
this.clientid = clientid;
return this;
}
このコードは正常に動作します。問題は、バージョン 11 以上の guava ライブラリを使用できないことです。使用すると、このライブラリを使用するお客様に問題が発生するため、要するに、final Long id = Longs.tryParse(clientid);
グアバを使用せずにこの行の代替品を探しているか、使用できる可能性があります。古い guava バージョンLongs.tryParse
11。Guava 14 以降でメソッドが追加されたため。
それを行う最善の方法は何ですか?Apache Commons から使用できるものはありますか?