Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何解决此扫描仪问题?我希望这四个动作都能起作用,但每当我输入并单击enter时,这四个动作都不会起作用;行不通_Java - Fatal编程技术网

Java 如何解决此扫描仪问题?我希望这四个动作都能起作用,但每当我输入并单击enter时,这四个动作都不会起作用;行不通

Java 如何解决此扫描仪问题?我希望这四个动作都能起作用,但每当我输入并单击enter时,这四个动作都不会起作用;行不通,java,Java,我正试图创建一个盗版的口袋妖怪游戏,但这个扫描器不工作 JavaBattle对象在驱动程序内部实例化。驱动程序中的所有东西都可以工作,但此代码不能。“旋风”、“龙卷风旋转”、“热力”和“气喘吁吁”都应该有效,但第一次尝试就不行了 我真的不知道该怎么办 import java.util.*; public class JavaBattle{ private int opponentHealth; public void fight(){ opponentHealt

我正试图创建一个盗版的口袋妖怪游戏,但这个扫描器不工作

JavaBattle
对象在驱动程序内部实例化。驱动程序中的所有东西都可以工作,但此代码不能。“旋风”、“龙卷风旋转”、“热力”和“气喘吁吁”都应该有效,但第一次尝试就不行了

我真的不知道该怎么办

import java.util.*;
public class JavaBattle{
    private int opponentHealth;

    public void fight(){
        opponentHealth = 100;
        Scanner attackchoice = new Scanner(System.in);
        System.out.println("Attacks:\nCylcone\nTornado Spin\nThermal\nHuff 'n Puff");
        System.out.println("Choose One:");
        String ability = attackchoice.nextLine();
        if(!ability.equals("Cyclone")||!ability.equals("Tornado 
Spin")||!ability.equals("Thermal")||!ability.equals("Huff 'n Puff")){
            System.out.println("Not available. Please Try Again.");
            System.out.println("Attacks:\nCylcone\nTornado Spin\nThermal\nHuff 'n Puff");
            System.out.println("Choose One: ");
            ability = attackchoice.nextLine();
        }
        int randAttackDamage = (int)(Math.random()*16)+15;
        int randOpponentAttack = (int)(Math.random()*21)+10;
        System.out.println(ability + " was used." + "("+randAttackDamage+")");
        opponentHealth = opponentHealth - randAttackDamage;
        System.out.println("Opponents Current Health: " + opponentHealth);
    }
}

您需要将逻辑OR运算符
|
替换为AND运算符
&
。对于您拥有的代码,您的
if
子句只有在
ability
同时是所有四种能力时才为真。您要检查该能力是否不是任何可用的能力。

如果(!value==1 | |!value==2)
将始终输入
然后
块,因为该值不能一次等于所有这些值。如果(!value==1&&!value==2),则需要