Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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
If statement 尝试使用if-else签入int返回方法,但它没有';行不通 public static int getIntFromUser(字符串提示){ 扫描仪输入=新扫描仪(系统输入); System.out.println(提示); 布尔循环=真; int input=in.nextInt(); while(循环){ 如果(输入=0 | |输入_If Statement_Methods_Int_Return - Fatal编程技术网

If statement 尝试使用if-else签入int返回方法,但它没有';行不通 public static int getIntFromUser(字符串提示){ 扫描仪输入=新扫描仪(系统输入); System.out.println(提示); 布尔循环=真; int input=in.nextInt(); while(循环){ 如果(输入=0 | |输入

If statement 尝试使用if-else签入int返回方法,但它没有';行不通 public static int getIntFromUser(字符串提示){ 扫描仪输入=新扫描仪(系统输入); System.out.println(提示); 布尔循环=真; int input=in.nextInt(); while(循环){ 如果(输入=0 | |输入,if-statement,methods,int,return,If Statement,Methods,Int,Return,嗨,我刚开始学习Java,我正试图找出它为什么不起作用。我是初学者,所以请不要介绍复杂的代码或解决方案 我知道我必须返回一个整数,但即使我把它放在“if”语句中,它仍然会出错。我无法将该方法更改为void,因为我需要返回一个整数,以便在其他方法中使用。我想知道有没有解决办法?非常抱歉,谢谢。您可能希望用户继续输入整数,直到输入正确的整数为止。为此,每次用户输入一个新的整数时,您需要重新提示用户输入一个新的整数,该整数是将return语句移到循环之外的函数末尾。loop=false将中断循环,因此

嗨,我刚开始学习Java,我正试图找出它为什么不起作用。我是初学者,所以请不要介绍复杂的代码或解决方案


我知道我必须返回一个整数,但即使我把它放在“if”语句中,它仍然会出错。我无法将该方法更改为void,因为我需要返回一个整数,以便在其他方法中使用。我想知道有没有解决办法?非常抱歉,谢谢。

您可能希望用户继续输入整数,直到输入正确的整数为止。为此,每次用户输入一个新的整数时,您需要重新提示用户输入一个新的整数,该整数是将
return
语句移到循环之外的函数末尾。
loop=false
将中断循环,因此它将返回用户输入的第一个正整数。

非常感谢您的帮助!:)@肯:没问题。我希望我的回答清楚了,解决了你的问题。如果有,请单击旁边的绿色复选标记接受。非常感谢您的帮助!:)<代码>(输入==0 | |输入<0)可以由一个
(输入)替换
public static int getIntFromUser(String prompt) {
    Scanner in = new Scanner(System.in);
    System.out.println(prompt);
    boolean loop = true;

    int input = in.nextInt();

    while(loop){
        if (input == 0 || input < 0) {
            System.out.println("Please enter digits greater than 0!");
    }
        else {
            System.out.println("You have entered: "+input);
            loop = false;
            return input;
        }
    }
}

public static void main(String[] args) {
    getIntFromUser("Please enter digits greater than 0");

}
int input = in.nextInt();

while(loop) {
    if (input == 0 || input < 0) {
        System.out.println("Please enter digits greater than 0!");
        input = in.nextInt();
    }
    else {
        System.out.println("You have entered: "+input);
        return input;
    }
}
return input;
int input = in.nextInt();

while(loop) {
    if (input == 0 || input < 0) {
        System.out.println("Please enter digits greater than 0!");
        input = in.nextInt();
    }
    else {
        System.out.println("You have entered: "+input);
        loop = false;
    }
}
return input;