Java - 检查输入是否为正整数,负整数,自然数等。

时间:2013-11-04 10:45:38

标签: java

在Java中是否有任何内置方法可以找到用户输入的类型,无论是正数还是负数等等?下面的代码不起作用。我试图找到一种方法来输入任何内置的方法,可以在if语句中执行它。

import java.util.Scanner;

public class Compare {

    public static void main(String[] args) { 

        Scanner input = new Scanner(System.in);

        System.out.print("Enter a number: ");
        int number = input.nextInt();

        if(number == int) 
            System.out.println("Number is natural and positive.");
    }
}

6 个答案:

答案 0 :(得分:30)

如果您真的不得不避开运营商,请使用Math.signum()

  

返回参数的signum函数;如果参数为零,则为零   零,如果参数大于零则为1.0,如果参数为-1.0   小于零。

答案 1 :(得分:25)

如何使用以下内容:

int number = input.nextInt();
if (number < 0) {
    // negative
} else {
   // it's a positive
}

答案 2 :(得分:5)

(您应该以{{1​​}}语句来检查三种不同的状态(正面,负面,0)

这是一个简单的例子(排除了非整数值的可能性)

Else-If

答案 3 :(得分:3)

对于整数,您可以使用Integer.signum()

  

返回指定int值的signum函数。 (如果指定的值为负,则返回值为-1;如果指定的值为0则返回值   指定值为零;如果指定的值为正,则为1。)

答案 4 :(得分:0)

您可以使用if(number >= 0)。您使用int number = input.nextInt();这一事实可确保它必须是整数。

答案 5 :(得分:0)

使用以下代码。

if(number >=0 ) {
            System.out.println("Number is natural and positive.");
}