“使用”不好吗;return";逃避主要方法?
所以这可能是一个非常愚蠢的问题,但在你把这篇文章烧成灰烬之前,请听我说完XD。下面我写了三个基本类,它们都完成了相同的任务,但通过不同的方式: A类(休息)“使用”不好吗;return";逃避主要方法?,return,break,system.exit,Return,Break,System.exit,所以这可能是一个非常愚蠢的问题,但在你把这篇文章烧成灰烬之前,请听我说完XD。下面我写了三个基本类,它们都完成了相同的任务,但通过不同的方式: A类(休息) import java.util.Scanner; public class ClassA { public static void main(String[] args) { Scanner in = new Scanner(System.in); while(true) {
import java.util.Scanner;
public class ClassA
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
break;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassB
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
return;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassC
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
System.exit(0);
else
System.out.println("Thank you!");
}
}
}
B类(退货)
import java.util.Scanner;
public class ClassA
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
break;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassB
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
return;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassC
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
System.exit(0);
else
System.out.println("Thank you!");
}
}
}
C类(系统出口(0))-
import java.util.Scanner;
public class ClassA
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
break;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassB
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
return;
else
System.out.println("Thank you!");
}
}
}
import java.util.Scanner;
public class ClassC
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
while(true)
{
System.out.print("Enter a sentence (/q to quit): ");
String sentence = in.nextLine();
if(sentence.equals("/q"))
System.exit(0);
else
System.out.println("Thank you!");
}
}
}
虽然我更喜欢A班和C班,B班有什么问题吗?更具体地说,使用return
语句退出程序的main
方法是否是一种不良做法?若然,原因为何
提前谢谢 使用
return
是正确的做法,因为它使main
更易于测试——您的测试框架不需要拦截退出尝试