日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

投票 java_Java基础之简单投票程序

發布時間:2023/12/16 java 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 投票 java_Java基础之简单投票程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

/*=======================================

* 題目:

* 1)用面向對象方法,編寫學生類Student,

* 將候選人如姓名、代號、票數保存到Student中,并實現相應的get set 方法

* 2)輸入數據之前,顯示出各位候選人的代號及姓名:(提示;建立一個候選人數組)

* 3)循環執行接收鍵盤輸入的班長候選人代號,直接輸入的數字為0,結束投票的輸入工作

* 4)在接收每次輸入的候選票后要求驗證該后選票是否有效,

* 即如果輸入的數不是0、1、2、3、4這5個數字之一,或者輸入一串字母,應顯示出錯誤提示信息:

* 此選票無效,請輸入正確的候選人代號,并繼續輸入

* 5)輸入結束后顯示所有候選人的得票情況,如下所示

* 6)輸入最終當選者的相關信息,如下所示。

*

*====================================*/

package demo014;

import java.io.*;

/**

* 先把輪子造好,再干大家伙

* 是一個工具類,用于數據輸入;

* @author R

*

*/

class InputMyData{

private BufferedReader buf=null;

//Constructer

public InputMyData(){

this.buf=new BufferedReader(new InputStreamReader(System.in));

}

public String getString(String info){

String temp=null;

System.out.print(info);

try {

temp=this.buf.readLine();//讀數據

} catch (IOException e) {

e.printStackTrace();

}

return temp;

}

public int getInt(String info,String err){//得到整形

int temp =0;

String str = null;

boolean flag=true;//定義循環標記符

while(flag){

str=this.getString(info);

if(str.matches("\\d+")){//利用正則表達式,判斷輸入的字符全是數字的話

temp=Integer.parseInt(str);

flag=false;//更改循環標記,退出

}else{

System.out.println(err);

}

}

return temp;

}

};

class Student implements Comparable{

private int stuNo;

private String name;

private int vote;

public Student(int stuNo,String name,int vote){

this.stuNo=stuNo;

this.name=name;

this.vote=vote;

}

public int getStuNo() {

return stuNo;

}

public void setStuNo(int stuNo) {

this.stuNo = stuNo;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getVote() {

return vote;

}

public void setVote(int vote) {

this.vote = vote;

}

//實現比較方法

@Override

public int compareTo(Student o) {//按大--》小排序

if(this.vote

return 1;//

}else if(this.vote>o.vote){

return -1;

}else{

return 0;

}

}

};

class Operate{

private Student stu[]={new Student(1,"張三",0),

new Student(2,"李四",0),

new Student(3,"王五",0),

new Student(4,"趙六",0)};

private boolean flag=true;

public Operate(){

this.printInfo();

while(flag){

this.vote();

}

this.printInfo();

this.getResult();

}

public void getResult(){

java.util.Arrays.sort(this.stu);

System.out.println("投票結果:"+this.stu[0].getName()+"以"+this.stu[0].getVote()+"贏得投票");

}

public void printInfo(){

for(int i=0;i

System.out.println(this.stu[i].getStuNo()+": "+

this.stu[i].getName()+"【" +this.stu[i].getVote()+ "】'");

}

}

//完成投票

public void vote(){

InputMyData input =new InputMyData();

int num = input.getInt("請輸入候選人代號(數字0結束):", "輸入信息錯誤!重新輸入:");

switch(num){

case 0: {

this.flag=false;

break;

}

case 1:{

this.stu[0].setVote(this.stu[0].getVote()+1);

break;

}

case 2:{

this.stu[1].setVote(this.stu[1].getVote()+1);

break;

}

case 3:{

this.stu[2].setVote(this.stu[2].getVote()+1);

break;

}

case 4:{

this.stu[3].setVote(this.stu[3].getVote()+1);

break;

}

default:{

System.out.println("輸入數據無效,請重新輸入:");

break;

}

}

}

}

public class DemoVote {

public static void main(String args[]){

new Operate();

}

}

總結

以上是生活随笔為你收集整理的投票 java_Java基础之简单投票程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。