2017-06-15 11 views
-2

私はString loanTerm型の変数を持ち、それが1〜999の範囲内にあるかどうかをチェックしたいと考えます。 NAまたは1〜999の数字(小数点は除外)を含むことができ、空白にすることはできません。 @NotNull、@Range(min = 1、max = 999)を使用しましたが、完全な検証を実行できませんでした。文字列が範囲内にあるかどうかを確認

+1

これらの注釈は何ですか?なぜあなたはそれらが働くことを期待しましたか? –

+0

あなたは単にそれ以外の理由でそれを行うことができます... –

+0

@Apurbaあなたの質問を少し詳しく説明する必要があります。あなたがそうするなら、私はあなたの答えを見つけられると確信しています。 – Piyush

答えて

0

loanTermため、次のsetメソッドを使用します。

setloanTerm(String str){ 
    if(str != null && str !=""&&Integer.parseInt(str) >=0 && Integer.parseInt(str)<=999){ 
    loanTerm=str; 
} 
} 
0

あなたは、範囲内の文字列が最も簡単な方法は、if文String.compareTo()メソッドを使用するかどうかを確認したい場合:POJOクラスで

if(str.compareTo(lower) > 0 && upper.compareTo(str) < 0){ 
     System.out.println("inside the range"); 
    } 
0

まず、空であるかどうかを確認します。 Integerクラスを使用してIntegerにキャストできるかどうかをチェックできます。

Integer validateLoanTerm(String loanTerm) { 
    if(!StringUtils.isEmpty(loanTerm) && Integer.parseInt(loanTerm) > 0 && Integer.parseInt(loanTerm) < 999) { 
     return Integer.parseInt(loanTerm); 
    } 

    return null; 
} 

私はメソッドの戻り値として整数値を使用しました。しかし、値を必要としない場合は、メソッドから真偽値を返すことができます。

関連する問題