来自其他方法的java发送和接收单元
一个方法能否从其他方法接收2个以上的整数,从而执行一个函数?在method game中,我试图从敌人的方法中获得edamage和elife的数量,并试图从method user中获得用户的生命和伤害,这样method game就拥有了所有的信息,所以我可以执行用户与敌人交互的算术功能
public static void game(String[] args, int elife) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int life=80;
int damage = 8;
int A = (elife - damage);
String enemy ="";
int Enemy;
Random generator = new Random();
Enemy = generator.nextInt(3)+1;
if (Enemy == 1)
{enemy = "Grunt";
int hp=45;
int shp= Integer.parseInt(br.readLine());}
else if (Enemy == 2)
{enemy = "Slave";
int hp =40; }
else if (Enemy == 3)
{enemy= "Witch";
int hp=50;}
System.out.println("Welcome to the game!");
user();
System.out.println("Get Ready to face you first opponent ");
System.out.println("You are Faced against " + enemy);
System.out.println("Would you like to: \n [A]Attack [B]Defend");
String choice = br.readLine();
if (choice.equals("A")){
System.out.println(""+A+"");
System.out.println("You chose to attack "+enemy+" for "+"damage!");}
else if(choice.equals("B")){
System.out.println("You chose to defend and recieved"+"damage.");
}}
public static void user () throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int life= 80;
int damage = 8;
System.out.print("Please enter your name: ");
String name = br.readLine();
System.out.println("WELCOME "+name);
}
public static void Witch() throws IOException{
int elife = 50;
int damage;
int edamage = 0;
Random generator = new Random();
damage = generator.nextInt(3)+1;
if (damage == 1)
edamage = 5;
else if (damage == 2)
edamage = 10;
else if (damage == 3)
edamage = 12;
System.out.println("Enemy life : "+elife);
System.out.println("Enemy damage : " +edamage);
}
}
public static void Grunt(){
int elife = 45;
int damage;
int edamage = 0;
Random generator = new Random();
damage = generator.nextInt(3)+1;
if (damage == 1)
edamage = 3;
else if (damage == 2)
edamage = 8;
else if (damage == 3)
edamage = 15;
System.out.println("Enemy life : "+elife);
System.out.println("Enemy damage : " +edamage);
}
public static void Slave(){
int elife = 40;
int damage;
int edamage = 0;
Random generator = new Random();
damage = generator.nextInt(3)+1;
if (damage == 1)
edamage = 7;
else if (damage == 2)
edamage = 8;
else if (damage == 3)
edamage = 5;
System.out.println("Enemy life : "+elife);
System.out.println("Enemy damage : " +edamage);
}}
# 1 楼答案
方法重载(也称为静态多态性)是一种在一个类中可以有两个(或多个)同名方法(函数)的方法。是的,就这么简单
通过这种方式,您可以根据面积的形状类型对其调用相同的方法