在下面您可以看到我的程序的输出,我想在行号结束我的程序。 7我如何实现我花了1个小时,但仍然无法解决此问题。我看到了多个解决方案,但是所有都是相同的类型,都将获得正确的输出。 注意:-主方法不应更改任何代码行
import java.io.*;
import java.util.*;
public class Person {
private int age;
public Person(int initialAge) {
age = initialAge;
if (age < 0) {
age = 0;
System.out.println("Age is Not Valid, Setting age to 0");
}
}
private void amIOld() {
String s = "";
if (age < 13) {
s = "You are Young";
} else if (age >= 13 && age < 18) {
s = "Your are Teenager";
} else {
s = "You are Old";
}
System.out.println(s);
}
private void yearPasses() {
age++;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for (int i = 0; i < T; i++) {
int age = sc.nextInt();
Person p = new Person(age);
p.amIOld();
for (int j = 0; j < 3; j++) {
p.yearPasses();
}
p.amIOld();
System.out.println();
}
sc.close();
}
}
答案 0 :(得分:1)
您可以在要终止程序的行上使用System.exit(0);
。
这是您可以了解更多信息的链接:
https://www.geeksforgeeks.org/system-exit-in-java/
答案 1 :(得分:0)
我了解您的问题上方的问题是Hackerank 30天代码Java挑战的一部分,并且您的代码将不被接受的问题与新行无关。在您的构造函数中,只需将行age to 0
更改为age to 0.
即可。
问题是您没有在打印语句中的0后添加点。