for(int i = 0; i < req.dependsRequirement.size(); i++) {
if(req.dependsRequirement.get(i).hasDesplayed == false)
I have created an ArrayList
.
I want to access the element in index i
, but when I use get(i)
the compiler gives me a syntax error.
To understand the program
I have created a class Requirement
that has 3 attributes (name, hasDisplayed, and ArrayList of Requirement
)
You need to provide a minimal reproducible example of your code. Only with it someone can detect the exact reason of your issue.
But I can suppose that the problem connected with a type of object that you are trying to parse and take hasDesplayed parameter from it.
So here I just assume what code structure you have based on your question details and provide a valid code for it. You should use a Collection type.
public class Test {
public static void main(String[] args) {
Requirement requirement1 = new Requirement();
requirement1.setName("Req1");
requirement1.setHasDisplayed(true);
Requirement requirement2 = new Requirement();
requirement2.setName("Req2");
requirement2.setHasDisplayed(false);
Requirement requirement3 = new Requirement();
requirement3.setName("Req3");
requirement3.setHasDisplayed(true);
ArrayList<Requirement> requirementList = new ArrayList<>(); // You need to parse this object
requirementList.add(requirement1);
requirementList.add(requirement2);
requirementList.add(requirement3);
Requirement requirementSummary = new Requirement(); // But I suppose you parse some kind of this object
requirementSummary.setRequirement(requirementList);
for (int i = 0; i < requirementList.size(); i++) {
if (requirementList.get(i).hasDisplayed == false) {
System.out.println(requirementList.get(i).getName());
}
}
}
static class Requirement {
String name;
Boolean hasDisplayed;
ArrayList<Requirement> requirement;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Boolean getHasDisplayed() {
return hasDisplayed;
}
public void setHasDisplayed(Boolean hasDisplayed) {
this.hasDisplayed = hasDisplayed;
}
public ArrayList getRequirement() {
return requirement;
}
public void setRequirement(ArrayList requirement) {
this.requirement = requirement;
}
@Override
public String toString() {
return "RequirementDetails{" +
"name='" + name + '\'' +
", hasDisplayed=" + hasDisplayed +
", requirement=" + requirement +
'}';
}
}
}