-1

データベースから 9999912499 という値を取得しています。部分文字列を使用して、99999 と 12499 の 2 つの部分に分けました。ここで、最初の文字列が 99999 に等しいかどうかを確認したいのですが、それ以外の場合は何らかの処理を行います。しかし、コントロールが if ループに入ることはありません

以下はスナップショットです。

String strPscId = Long.toString(pscID);
String convPscID = strPscId.substring(5, strPscId.length());
String checkNine = strPscId.substring(0,5);
BigDecimal jpaIdObj = jeuParam.getJpaIdObj();
Long mod_id  = modele.getModId();

log.info("outstrPscId == " +strPscId);
log.info("outconvPscID == " +convPscID);
log.info("outcheckNine == " +checkNine);
log.info("outjpaIdObj == " +jpaIdObj);
log.info("outmod_id == " +mod_id);

if(checkNine == "99999") { <method-call> }
else { <another - method - call> }
4

5 に答える 5

0

equals文字列を比較するのではなく、メソッドを使用する必要があり==ます。

から変更する

if(checkNine == "99999") 

if(checkNine.equals("99999"))
于 2013-11-14T15:57:15.677 に答える
-1
if (strPscId.startsWith("99999"))
{
     bla bla
}
else
{
     sth else than bla bla
}
于 2013-11-14T16:04:05.953 に答える
-1
if(checkNine.equals( "99999")) { 
   <method-call> 
}
else { 
     <another - method - call>
}
于 2013-11-14T15:56:48.413 に答える