如果该方法中还存在System.out.print,如何仅从方法中检索返回值。在下面的代码中,我将获得返回值,但每次调用方法时它都会执行System.out.print
public static void main(String[] args) {
String name = pickAName("bob", "ed", "dan");
System.out.printf(name);
}
public String pickAName (String...names){
System.out.printf("Randomly picking from %d names. %n",names.length);
Random random = new Random();
return names[random.nextInt(names.length)];
}
答案 0 :(得分:3)
计算机并不聪明 - 他们只能做你告诉他们做的事情。在您的情况下,它会打到printf()
的调用并在每次调用此方法时执行它。
如果您做的任何情况想要打印到printf()
的电话,那么您可以用if
条件将其打包。
如果您永远不需要输出,那么只需完全删除该行。
如果您正在使用printf()
的调用进行调试,请尝试习惯使用IDE的调试工具 - 从长远来看,它绝对会得到回报。特别是当你开始编写更复杂的程序时,或者你正在使用你没有写过的代码时。
答案 1 :(得分:0)
如果您无法控制该方法,则在调用pickAName方法时无法执行System.out.printf()行。通过控制,我的意思是你制作了pickAName方法或者可以改变它。