-2 java performance sum
import java.util.Scanner;
public class JavaApplication10 {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
while (true) {
int read = Integer.parseInt(reader.nextLine());
if (read == 0) {
break;
}
int sum;
sum = read;
System.out.println("Sum now: " + sum);
while (true) {
int read1 = Integer.parseInt(reader.nextLine());
if (read1 != 0) {
sum += read1;
System.out.println("Sum now: " + sum);
} else if (read1 == 0) {
System.out.println("Sum in the end: " + sum);
break;
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我写的一个代码,我知道这是否是最快的方法呢?
你在这里问错了问题.你看,你的代码做了:
现在:
简而言之:你不能写出"这个"代码有很大不同,它已经是"最佳"的意义了:你得到你的输入,你不浪费时间/记忆"存储"它,你只需积累总和,完成.该要求编码良好.
你可以保存的唯一东西就是你的打印语句,因为单个println可能花费你毫秒,而添加int值可能在纳秒内发生.是的:打印比累加值慢几千倍.更糟糕的是:如果有人坐在机器前面,那么程序就会在那里做任何事情,直到用户键入数字和ENTER键.因此,"如何添加"不会以任何重要方式影响代码的整体运行时.
换句话说:你正处于担心"表现"无益的地步.学习如何编写人类可读代码,学习如何编写简单的代码,优雅地完成您想要做的事情.
性能是一个奢侈问题,您在学习曲线的后期点担心.