0

と という 2 つのプロファイルがSignProfileありValidationProfileます。これらのプロファイルは 1 つ以上にすることができます。

SignProfile.size >1 and  ValidationProfile.size>1

署名と検証の両方で複数のプロファイルがある場合は、これらのプロファイルもループする必要がありますSignProfileValidationProfilenull

私は使っている

List<SignProfile> SP = new ArrayList<>;
List<ValidationProfile> Vali = new ArrayList<>;
while SP_interator.hasnext
{
    while Vali_interator.hasnext
    {
        // do something
    }
    // Piece of code
}

今私が直面している問題はnull、SignProfile が来ることがありますが、ValidationProfile は来ないということnullです。したがって、上記のコードのように、意図したコードは実行されません。

誰かが私を案内してもらえますか?他のコレクションを使用しますか?

4

2 に答える 2

0

これはあなたが意味するものですか?

if (signProfiles != null && validationProfiles != null) {

    for (SignProfile signProfile : signProfiles) {
        //do something with signProfile
    }

    for (ValidationProfile validationProfile : validationProfiles) {
        //do something with validationProfile
    }
}

またはネストされたバージョン...

if (signProfiles != null && validationProfiles != null) {

    for (SignProfile signProfile : signProfiles) {
        //do something with signProfile

        for (ValidationProfile validationProfile : validationProfiles) {
        //do something with validationProfile, and signProfile?
        }
    }
}
于 2012-06-21T20:40:37.170 に答える
0

Java 5 以降を使用している場合は、foreach 構文を使用できます。

List<SignProfile> signProfileList = new ArrayList<>;
List<ValidationProfile> validationProfileList = new ArrayList<>;

if(signProfileList != null) {
  for(SignProfile sp : signProfileList) {
    // you can work with the sp variable here, which represents the current item from signProfileList
    if(validationProfileList != null) {
      for(ValidationProfile vp : validationProfileList) {
        // you can work with vp variable here, which represents the current item from validationProfileList
      }
    }
  }
}

注: コードを少しわかりやすくするために、いくつかの変数の名前を変更しました。

ところで、これらをネストしてよろしいですか? お互いに関係がないようです。

于 2012-06-21T20:42:30.803 に答える