矩阵格式的控制台输出


public class dataarrange {
public static void main(String args[]) {
try {
PrintStream myconsole = new PrintStream(new File("D://out.txt"));
for (int i = 0; i < 10; i++) {
double a = Math.sqrt(i);
int b = 10 + 5;
double c = Math.cos(i);
myconsole.print(a);
myconsole.print(b);
myconsole.print(c);
}
} catch (FileNotFoundException ex) {
System.out.println(ex);
}
}
}

在此编程代码中,我生成一个名为out的文本文件,其中我写下了dataarrange class.代码中没有错误的输出。根据代码,我们得到 a,b,c 10 次。我在文本文件中系统地写下了该值。文本文件应看起来像一个包含 10 行和 3 列的矩阵。但是当我打开文本文件时.txt所有数据都是分散的。它们被写成一行而不是矩阵格式。

期望输出:

a    b    c
val1 val2 val3
val4 val5 val6
val7 val8 val9

等等...

但是获得输出val1 val2 val3 val4 val5 val6.我该如何解决这个问题?

在 for 循环中使用它将对齐列:

double a = Math.sqrt(i);
int b=10+5;
double c=Math.cos(i);
myconsole.printf("%10f %10d %10f", a, b, c);
myconsole.println();

输出:

0.000000         15   1.000000
1.000000         15   0.540302
1.414214         15  -0.416147
1.732051         15  -0.989992
2.000000         15  -0.653644
2.236068         15   0.283662
2.449490         15   0.960170
2.645751         15   0.753902
2.828427         15  -0.145500
3.000000         15  -0.911130

您也可以使用转义序列 \t,但应首选上述带有格式化字符串的 anwser

包装测试;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;
public class DataRange {
public static void main(String args[]) {
try {
PrintStream myconsole = new PrintStream(new File("out.txt"));
for (int i = 0; i < 10; i++) {
double a = Math.sqrt(i);
int b = 10 + 5;
double c = Math.cos(i);
System.out.print("t" + a);
myconsole.print("t" + a);
System.out.print("t" + b);
myconsole.print("t" + b);
System.out.print("t" + c);
myconsole.print("t" + c);
myconsole.print("n");
System.out.println("n");
System.out.println("Completed");
}
} catch (FileNotFoundException ex) {
System.out.println(ex);
}
}
}

相关内容

  • 没有找到相关文章

最新更新