在while循环的末尾,我使用scanner类从用户那里获取一个字符串作为输入,但它不接受任何输入。
请引导我。
import java.util.Scanner;
/**
*
* @author Student
*/
public class Exception {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
/*
Creating a UserDefined Operations `
*/
while(1==1){
System.out.println("\nEnter one of the following operations: ");
System.out.println("1. Arithmeric Exception");
System.out.println("2. ArrayIndexOutOfBounds Exception");
System.out.println("3. NumberFormat Exception");
System.out.println("4. Exit");
int choice=s.nextInt();
switch(choice)
{
case 1:
//ArithmeticException
System.out.println("Enter the numerator: ");
int num=s.nextInt();
System.out.println("Enter the denomerator: ");
try{
int dem=s.nextInt();
int divide=num/dem;
}
catch(ArithmeticException e){e.printStackTrace();}
break;
case 2:
//ArrayIndexOutOfBoundException
System.out.println("Enter the size of array");
int size=s.nextInt();
int[] array = new int[size];
System.out.println("Enter the elements: ");
for(int x:array)
x=s.nextInt();
System.out.println("Enter the index of array to be accessed:");
try{
int index=s.nextInt();
System.out.println("The array to be accessed is: "+array[index]);
}catch(ArrayIndexOutOfBoundsException e){e.printStackTrace();}
break;
case 3:
//NumberFormatException
System.out.println("Enter a number");
String s1=s.nextLine();
try{
Integer.parseInt(s1);
}
catch(NumberFormatException e){e.printStackTrace();}
break;
case 4:
System.exit(0);
default:
System.out.println("Invalid choice");
}
System.out.println("Do you want to continue:\nyes/no ");
String str;
str=s.nextLine();
if(str.equals("no")||str.equals("No")||str.equals("n"))
break;
else
{
System.out.println("Invalid Input . Existing The Program");
break;
}
}
}
}
因为您使用的是nextInt(),所以它不会使用newline,所以以后在执行nextLine时,它会使用空行。
所以问题的解决方案是将nextLine()放在最后一次nextInt()之后
问题内容: 我试图找到一种方法来从键盘输入。 我尝试使用: 该方法不存在。 我尝试了作为。但是,它并不总是在每种情况下都可行,因为我从我的方法中调用的另一个方法需要作为输入。因此,我必须找到一种显式将char作为输入的方法。 有什么帮助吗? 问题答案: 你可以从中提取第一个字符: 消耗正好一个字符,你可以使用: 要严格使用一个字符,可以使用:
问题内容: 我正在编写一个使用Event类的程序,该类中有一个日历实例和一个String类型的描述。创建事件的方法使用扫描仪获取月,日,年,小时,分钟和说明。我遇到的问题是Scanner.next()方法仅返回空格之前的第一个单词。因此,如果输入为“我的生日”,则该事件实例的描述就是“我的”。 我做了一些研究,发现人们使用Scanner.nextLine()解决此问题,但是当我尝试这样做时,它只是
我在java中有这段代码,代码工作得很好 你对这个问题有什么解决办法吗??? 谢谢
任何人都可以帮我解决这个问题。我接受三个输入:整数、双精度和字符串,但Scanner类不接受字符串值
我是Java的新手,我正在尝试从一个多行的输入中获取一个字符串。 例如,一个字符串=“the quick brown fox jumps over the lazy dog.the quick brown fox jumps over the lazy dog.the quick fox jumps over the lazy dog.”输入如下: 敏捷的棕色狐狸跳过懒惰的狗。 敏捷的棕色狐狸跳过
我正在编写一个有两个类的程序。类1包含一个名为“Probability”的构造函数,它接受三个输入:一个String和两个double。此代码如下所示: 还有一个修饰符,根据输入的字符串有五个条件(例如,如果this.inputString == "String1 "...),带有对无效输入的捕捉。类2多次调用“概率”构造函数来创建我的程序需要的概率。 这就是我的困境。有五个字符串输入,我需要能够