所以我是一個非常大的noob在Java和我有一個考試即將到來,並一直在練習整個星期。我的進展緩慢但穩定。我正在做的一項練習要求我將數組計算的輸出打印到控制檯,並使用控制檯輸出和相同的格式創建文件temperature.txt
。更簡單的方法來寫一個Java輸出到控制檯和文本文件?
我已經想出瞭如何能夠做到這一點或另一個,但我在做這兩個(有記住緩慢和穩定的學習者)有困難。有一個簡單的初學者的方法要記住?
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.DecimalFormat;
public class Temperature {
public static void main(String[] args) throws IOException{
double[] temps = {100, 98, 80.5, 90.2, 99.4, 89.1};
MaxMin(temps);
}
public static void MaxMin(double[]temps) throws IOException{
FileWriter fwriter = new FileWriter("Temperatures.txt", true);
PrintWriter outputfile = new PrintWriter(fwriter);
double min= Double.MAX_VALUE;
double max= Double.MIN_VALUE;
double sum = 0;
DecimalFormat formatter = new DecimalFormat("0.0");
for(int i = 0;i<temps.length;i++){
sum += temps[i];
if(temps[i] > max){
max = temps[i];
}
if(temps[i]< min){
min = temps[i];
}
}
double avg = sum/temps.length;
outputfile.println("Average Temp: " + formatter.format(avg));
outputfile.println("Maximum Temp: " + formatter.format(max));
outputfile.println("Minimum Temp: " + formatter.format(min));
outputfile.close();
}
}
我上面有什麼打印文本,但沒有在控制檯上。
編輯:只需在最後添加3個System.out.println語句來滿足這兩個要求是否可以接受?像這樣:
System.out.println("Average Temp: " + formatter.format(avg));
System.out.println("Maximum Temp: " + formatter.format(max));
System.out.println("Minimum Temp: " + formatter.format(min));
outputfile.println("Average Temp: " + formatter.format(avg));
outputfile.println("Maximum Temp: " + formatter.format(max));
outputfile.println("Minimum Temp: " + formatter.format(min));
outputfile.close();
使用日誌記錄。 Log4j for Java。控制檯和文本輸出在一個 –
至於你是新的編輯,我會爲了可讀性做兩件事之一。我要麼將嵌入換行符的一個大字符串,以便您有一個控制檯打印和單個文件寫入,或者我將交替排列1和2寫入/打印Avg Temp,第3和4行寫入/打印最大溫度等。 – nhgrif