有谁知道使用Formatter方法编写ArrayList的最佳方法?我会非常感谢代码的一个例子让我走上正轨!我之前从未使用过Formatter方法,所以我对它有点新意,以及如何同时使用它和ArrayList!
答案 0 :(得分:0)
这个例子并不简单,它使用了你在java学习中不会遇到的泛型(使用它需要你自担风险:))。
package javaformatterexample;
import java.util.Formatter;
import java.util.List;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Arrays;
public class TextFileFormatter<T>
{
Formatter formatter;
String format;
public TextFileFormatter(Formatter formatter, String format)
{
this.formatter = formatter;
this.format = format ;
}
public Formatter getFormatter()
{
return formatter;
}
public String getFormat()
{
return format;
}
public void writeList(List<T> list)
{
for (T element : list)
{
getFormatter().format(getFormat(),element);
}
}
public void close()
{
getFormatter().close();
}
public static void main(String[] args)
{
System.out.println("Shows how to use the class Formatter");
try
{
File file = new File("out.txt");
//formatter that writes doubles to a file
TextFileFormatter<Double> formatter = new TextFileFormatter<>(
new Formatter(file), "%f");
// writes a list of doubles
formatter.writeList(Arrays.asList(2.0, 2.1, -15.3));
formatter.close();
}
catch (FileNotFoundException e)
{
System.out.println("File not found");
}
}
}