2016-04-03 9 views
0

これは3日間私を悩ませています。テキストフィールドからテキストを読み取ろうとしていますが、値の長さが0より大きい(Stringメソッドの長さを使用)かどうかを確認してから、ループを作成します。長さがゼロより大きくない場合は、エラーメッセージとエラーフラグ(ブール変数をtrueに設定)を設定する必要があります。私はStringメソッドのドキュメントに掘り下げたが、私のために働くlength()を得ることができないようです。コードで私の実験を見ることができます。初めての投稿、申し訳ありませんが、これが間違っている場合。Stringメソッドの長さを使用して長さを確認してください

private void setShipmentProperties() { 
    ship.setEmployeeNum(empNumTF.getText()); 
    if(ship.setEmployeeNum(String(length()) < 0)) { 
     isDataEntryError = true; 
     msgLbl.setText("Pay rate must be a numeric " + "value: 1, 2, 3..."); 
    } 
    ship.setShipmentNum(shipNumTF.getText(this.length())); 
    if(this.length() < 0) { 
     isDataEntryError = true; 
     msgLbl.setText("Pay rate must be a numeric " + "value: 1, 2, 3..."); 
    } 
    ship.setSupplierName(supplTF.getText()); 
    if(ship.length() < 0) { 
     isDataEntryError = true; 
     msgLbl.setText("Pay rate must be a numeric " + "value: 1, 2, 3..."); 
    } 
} 
+0

this.length()の代わりにthis.lengthを使用してください – mvikhona

+0

私はshipがあなたのクラスであり、setEmployeeNumが文字列をパラメータとしてとるメソッドであると仮定します。しかし、それを呼び出した直後に、文字列ではない 'String(length())<0)'が何となく返します。 文字列をクラスのセッターに渡す前に文字列をテストしてみませんか? – BryanT

+0

返信をお寄せいただきありがとうございます。 Shipは、最終的にこの情報をすべて集めて別のオブジェクトに渡すオブジェクトです。 –

答えて

0

長さは、文字列の長さがゼロよりも小さくすることができない< 0にすることはできません。

+0

不明な点がありましたら申し訳ありません。 Stringメソッドの長さを使用して値がゼロより大きい場合は、長さをチェックする必要があります。 0より大きくなければ、エラーメッセージとエラーフラグを定義するifループが必要です。 –

+0

私はまだ失われています。 <0をチェックしています。0をチェックする必要があると思います。 – nicomp

関連する問題