Java 我想更换这个元件
我的名字是earth000 我想改变人们的顺序,我想把每个人都联系起来 与公共课领导详细解释 白色,黑色,黄色,卡布姆Java 我想更换这个元件,java,Java,我的名字是earth000 我想改变人们的顺序,我想把每个人都联系起来 与公共课领导详细解释 白色,黑色,黄色,卡布姆 ↓ li.swap() 黑色,黄色,白色,黄色 请检查猎人、剑士、牧师和团队。另一个代码是问题语句的副本 public class Human { private String name; public String getName() { return name; } public void setName(String name
↓ li.swap()
黑色,黄色,白色,黄色
请检查猎人、剑士、牧师和团队。另一个代码是问题语句的副本
public class Human {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Human() {
setName("no name");
}
public Human(String name) {
this();
setName(name);
}
}
/////////////
public class Hunter extends Human{
public Hunter(){}
public Hunter(String name){
super(name);
}
public String attack(){
return "Yaa";
}
}
///////
public class Swordman extends Hunter{
public Swordman(){
}
public Swordman(String name){
super(name);
}
public String attack(){
return "zap";
}
}
/////////////////
public class Clergyman extends Hunter{
public clergyman(){ }
public clergyman(String name){
super(name);
}
public String attack(){
return "kaboom";
}
}
///////////
import java.util.StringJoiner;
import java.util.ArrayList;
public class Humans <T extends Human> {
ArrayList<T> people;
public Humans() {
people = new ArrayList<>();
}
public void add(T one) {
people.add(one);
}
public int size() {
return people.size();
}
@Override
public String toString() {
StringJoiner j = new StringJoiner(", ");
for (T one : people)
j.add(one.getName());
return j.toString();
}
}
///////////
import java.util.StringJoiner;
public class Group extends Humans<Hunter>{
public Group(){
super();
}
public void swap(){
String lead = people(0);
for(int i=0;i<size()-1;i++){
people(i) = people(i+1);
}
people(size()-1) = lead;
if(size()<=1){return;}
}
public String everyoneAT(){
StringJoiner j = new StringJoiner(", ");
for(T one : people){
j.add(one.Attack());
return j.toString();
}
}
}
//////////////////////First challenge
import java.human.*;
public class First{
public static void main(String[] args){
Group li = new Group();
li.add(new Swordman("white"));
li.add(new Swordman("black"));
li.add(new Clergyman("yellow"));
System.out.println(li);
System.out.println(li.everyoneAT());
li.swap();
System.out.println(li);
System.out.println(li.everyoneAT());
}
}
/////////Second challenge
import java.Human.*;
public class Second{
public static void main(String[] args){
Group li = new Group();
System.out.println(li);
System.out.println(li.everyoneAT());
li.swap();
System.out.println(li);
System.out.println(li.everyoneAT());
}
}
///Third challenge
import java.human*;
public class Third{
public static void main(String[] args){
Group li = new Group();
li.add(new Swordman("white"));
System.out.println(li);
System.out.println(li.everyoneAT());
li.swap();
System.out.println(li);
System.out.println(li.everyoneAT());
}
}
公共级人员{
私有字符串名称;
公共字符串getName(){
返回名称;
}
公共void集合名(字符串名){
this.name=名称;
}
公共人权(){
设置名称(“无名称”);
}
公共人员(字符串名称){
这个();
集合名(名称);
}
}
/////////////
公共类Hunter扩展了人类{
公共搜索({}
公共猎人(字符串名称){
超级(姓名);
}
公共字符串攻击(){
返回“Yaa”;
}
}
///////
公开级剑士猎人{
公众剑士(){
}
公众剑士(字符串名称){
超级(姓名);
}
公共字符串攻击(){
返回“zap”;
}
}
/////////////////
公营牧师{
公共牧师({}
公共牧师(字符串名称){
超级(姓名);
}
公共字符串攻击(){
返回“kaboom”;
}
}
///////////
导入java.util.StringJoiner;
导入java.util.ArrayList;
公共阶层的人{
ArrayList人;
公众人物(){
people=newarraylist();
}
公共无效添加(T一){
增加(一);
}
公共整数大小(){
返回人。大小();
}
@凌驾
公共字符串toString(){
细木工j=新细木工(“,”);
对于(T一:人)
j、 添加(一个.getName());
返回j.toString();
}
}
///////////
导入java.util.StringJoiner;
公共类组扩展了人类{
公共组(){
超级();
}
公共无效掉期(){
串导=人(0);
对于(int i=0;i你在小组中犯了一些小错误
首先,有必要了解通过索引从ArrayList
检索元素的正确方法。您应该以people.get(0)的身份检索
。此外,在您的情况下,人员
是猎人列表,因此您不能将其分配给字符串
类。您应该将其分配给猎人
类型,如下所示:
Hunter-lead=people.get(0);
此外,要将项目添加到ArrayList
中的特定索引,您应该调用add
,将索引作为第一个参数传递。因此,您的方法应该如下所示:
public void swap(){
猎人线索=人。获取(0);
对于(int i=0;i 如果已设置(size()Postscript:part add)。