建一个test1的类就可以跑了
import java.util.*;
public class test1 {
public static void main(string[] args) {
list stus=new arraylist();
for(int i=1;i<=100;i++){//按你要求100人
stus.add(new stu(i));
}
int peop = stus.size();// 有多少个人
boolean[] brr = new boolean[peop];// 声明一个多少个元素的boolean数组
arrays.fill(brr, true);// 默认都为true
int count = 0;// 报数号
int remain = peop;// 剩下的人数
int index = 0;// 数组下标号
stu stu=null; //胜出者
while (remain != 1) {// 剩下人不是一个时继续
if (brr[index]) {// 该元素为false时不计数
count++;// 计数
if (count % 3 == 0) {// 计数为3时做以下三件事
brr[index] = false;// 将该元素值改为false,为了标志他被淘汰,不参加报数
remain--;// 剩下的人数减一
count = 0;// 计数清零,重新报数
}
}
index++;// 数组下标增加
if (index == peop) {
index = 0;// 如果数组下标和人数相等,即一个循环结束,应重新开始
}
}
for (int i = 0; i < brr.length; i++) {
if (brr[i]) {
stu=stus.get(i);
system.out.println("编号为"+(i + 1)+"大王");// 下标值,因为数组从0开始,所以要加1
system.out.println("名字:"+stu.getname());
system.out.println("身高:"+stu.getheith());
system.out.println("年龄:"+stu.getage());
}
}
}
}
class stu{
private string name;
private string heith;
private int age;
public stu(int i){
name="名"+i;
heith="高"+i;
age=i;
}
public string getname() {
return name;
}
public void setname(string name) {
this.name = name;
}
public string getheith() {
return heith;
}
public void setheith(string heith) {
this.heith = heith;
}
public int getage() {
return age;
}
public void setage(int age) {
this.age = age;
}
}