-1

所以我有一个充满浮点数的数组列表,当前打印在一行上: -221.5, -301.6, 19.2, -249.3, -312.2, 19.7,..

String arrayString = arr.toString();
arrayString= arrayString.substring(1,arrayString.length()-1); //Removes brackets
outputFile.println("array[]={"+arrayString+"};");

如何格式化arraylist,使其每三个数字打印一个新行,例如:

-221.5, -301.6, 19.2, 
-249.3, -312.2, 19.7,
...

ETC

4

3 回答 3

2

试试用这个...

public static void main(String[] args) {

    List<Float> floatList=new ArrayList<Float>();
    int i=0;

    floatList.add(-221.5f);
    floatList.add(-221.6f);
    floatList.add(-221.7f);
    floatList.add(-221.8f);
    floatList.add(-221.9f);
    floatList.add(-221.1f);
    for (Float float1 : floatList) {
        i++;
        System.out.print(" "+float1+",");
        if(i%3==0){
            System.out.println();
        }

    } 

输出:

-221.5、-221.6、-221.7、
-221.8、-221.9、-221.1、

于 2013-04-11T08:46:40.120 回答
1
for(int i=0;i<arr.length;i++) {
    outputFile.print(arr[i]+" ");
    if(i%3==2) {
        outputFile.println();
    }
}
于 2013-04-11T08:41:13.537 回答
1

在您的应用程序中,一组三个数字是否是一些有意义的数量或实体(它们看起来像是某种坐标!)?如果是这样,只需将它们组合成一个对象。

List<MyVector> list = new ArrayList<MyVector>;
list.add(new MyVector(-221.5, -301.6, 19.2));
list.add(new MyVector(-249.3, -312.2, 19.7));

for(MyVector v : list) {
    System.out.println(v.toString());
}

否则使用@x4rf41 的建议。

于 2013-04-11T08:40:03.263 回答