java做投票系統,設計程序如下:
import java.util.Set; //調用java.util.Set
import java.util.HashSet;//調用java.util.HashSet
import java.util.Iterator;//調用java.util.Iterator
public class Voter { //定義類
private static final int MAX_COUNT=100; //靜態變數,最大投票數,到達此數就停止投票
private static int count; //靜態變數,投票數
private static Set<Voter>voters=new HashSet<Voter>(); //靜態變數,存放所有已經投票的選民
private String name; //實例變數,投票人姓名
public Voter(String name){this.name=name;} //定義名字字元串函數
/**投票*/
public void voteFor(){ //投票函數
if(count==MAX_COUNT){ //如果計數結果等於投票人數最大值
System.out.println("投票活動已經結束"); //列印投票活動已經結束
return; //返回主函數
}
if(voters.contains(this)) //如果已包含投票人姓名
System.out.println(name+":你不允許重復投票!"); //列印投票人姓名和你不允許重復投票!
else{ //否則
count++; //計數加一
voters.add(this); //調用字元串函數添加投票人姓名
System.out.println(name+":感謝你投票!"); //列印投票人姓名和感謝你投票!
}
}
/**列印投票結果*/
public static void printVoteResult(){ //投票結果函數
System.out.println("當前投票數為:"+count); //列印當前投票數為,並且統計人數
System.out.println("參與投票的選民名單如下"); //列印參與投票的選民名單如下
for(Voter voter:voters){ //遍歷voters集合
System.out.println(voter.name); //列印輸出投票名稱
}
}
public static void main(String args[]) { //主函數
Voter tom=new Voter("Tom"); //開辟空間定義元素tom
Voter mike=new Voter("Mike"); //開辟空間定義元素mike
Voter jack=new Voter("Jack"); //開辟空間定義元素jack
tom.voteFor(); //進入tom的投票函數
tom.voteFor(); //進入tom的投票函數
mike.voteFor(); //進入mike的投票函數
jack.voteFor(); //進入jack的投票函數
Voter.printVoteResult(); //投票結果列印函數
}
}