【发布时间】:2015-12-15 23:23:19
【问题描述】:
我的代码:
import java.util.Scanner;
public class MonthMapper{
static String month;
static int month_num;
public static boolean isMonthNumber (String str) {
month = str;
month_num = Integer.parseInt(month);
return (month_num >= 0 && month_num < 12);
}
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.print("Enter Month: ");
month = sc.next();
System.out.println (isMonthNumber (Integer.toString(month_num)));
}
}
我必须编写一个静态类方法boolean isMonthNumber(String str),它将字符串作为输入并返回布尔值。如果输入字符串表示 1 到 12 之间的整数值,则该方法返回 True,否则该方法返回应返回 False。
目前由于某种原因,即使我输入大于 12 的值,我的程序也总是返回 true。
【问题讨论】:
-
没有。如果我输入
1,它将返回 true -
调用
Integer.toString(month_num)时month_num的值是多少?你怎么看? -
你是对的,但是当我输入一个大于 12 的数字时,它也返回 true
-
@Sotirios Delimanolis 它应该将用户输入的整数转换回字符串以便可以打印,因此它可以是用户输入的任何整数
-
调用
Integer.toString(month_num)时month_num的当前具体值是多少?
标签: java methods static boolean