The election program illustrates the use of ArrayLists, loops and conditional statements.
ArrayLists are resizable arrays, while loops and conditional statements are used to perform repetitions and make decisions, respectively.
The election program written in Java, where comments are used to explain each line is as follows:
import java.util.*;
public class Main {
public static void main(String[] args) {
//This creates a Scanner object
Scanner input = new Scanner(System.in);
//This creates a string ArrayList for the names of the candidates
ArrayList<String> names = new ArrayList<String>();
//This creates an Integer ArrayList for the vote count of the candidates
ArrayList<Integer> votes = new ArrayList<Integer>();
//This declares name as string
String name;
//This gets input for the name of the candidates
name = input.nextLine();
//This is repeated until the user enters "-1"
while (!"-1".equals(name)){
//If name is in the list,
if(names.contains(name)){
//This gets the index of the name
int pos =names.indexOf(name);
//This calculates the number of votes
Integer value = votes.get(pos)+1;
//This adds the vote to the vote ArrayList
votes.set(pos, value);
}
//If otherwise
else{
//This adds the candidate name to the name ArrayList
names.add(name);
//This adds 1 as the vote of the candidate to the vote ArrayList
votes.add(1);
}
//This gets input for the name of another candidates
name = input.nextLine();
}
//This prints the name of the election winner
System.out.println("Winner : " +names.get(votes.indexOf(Collections.max(votes))));
}
}
Read more about ArrayLists, loops and conditional statements at:
https://brainly.com/question/19504703