我试图找出为什么我必须throw
在main方法中异常,而我有try
/ catch
块可以处理这些异常?即使我删除了throws IllegalArgumentException,InputMismatchException
部分,该程序仍然可以编译并完美地工作.
public static void main(String[] args) throws IllegalArgumentException,InputMismatchException{
boolean flag = true;
Scanner in = new Scanner(System.in);
do{
try{
System.out.println("Please enter the number:");
int n = in.nextInt();
int sum = range(n);
System.out.println("sum = " + sum);
flag = false;
}
catch(IllegalArgumentException e){
System.out.println(e.getMessage());
}
catch(InputMismatchException e){
System.out.println("The number has to be as integer...");
in.nextLine();
}
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的字符串
The#red#studio#502#4
Run Code Online (Sandbox Code Playgroud)
我需要将它分成数组中的3个不同的字符串
s[0] = "The red studio"
s[1] = "502"
s[2] = "4"
Run Code Online (Sandbox Code Playgroud)
问题是第一个应该只有单词而第二个和第三个应该只有数字......
我试图玩这个s.split()
方法,但没有运气.
**这是我创建的课程的一部分
class Student{
private String name;
private float avGrade;
private float outstandingGrade = 82.0f;
public Student() { }
public Student(String Name, float avg) {
name = Name;
avGrade = avg;
}
public String getName() {
return name;
}
public void setName(String Name) {
name = Name;
}
Run Code Online (Sandbox Code Playgroud)
}
这是其中的主要方法和另一种方法:
public static void main(String[] args) {
Student[][] school = CreateStudentMat();
school[0][0].setName("Student");
}
public static Student[][] CreateStudentMat(){
Scanner input = new Scanner(System.in);
System.out.println("Please enter number of classes in school: ");
int NumClasses …
Run Code Online (Sandbox Code Playgroud)