我有两个说明SignProfile
和ValidationProfile
的个人资料。这些配置文件可以超过1,比如
SignProfile.size >1 and ValidationProfile.size>1
现在,只要SignProfile
和ValidationProfile
不是null
,我就必须执行一段代码,如果它们多于一个,我还需要遍历这些配置文件签名和验证。
我正在使用
List<SignProfile> SP = new ArrayList<>;
List<ValidationProfile> Vali = new ArrayList<>;
while SP_interator.hasnext
{
while Vali_interator.hasnext
{
// do something
}
// Piece of code
}
现在我遇到的问题是有时SignProfile来null
,但ValidationProfile不是null
。因此,按照上面的代码,不执行预期的代码片段。
有人可以指导我吗?我可以使用其他一些系列吗?
答案 0 :(得分: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?
}
}
}
答案 1 :(得分: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
}
}
}
}
注意:我已经重命名了一些变量,以使代码更清晰。
顺便问一下,你确定要嵌套这些吗?它们似乎并不相关。