简体   繁体   English

一次打印arraylist三个数字

[英]Printing arraylist three numbers at a time

So I have an arraylist full of floats which currently prints on one line: -221.5, -301.6, 19.2, -249.3, -312.2, 19.7,.. etc 所以我有一个充满浮点数的arraylist,当前在一行上打印: -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+"};");

How do I format the arraylist so that it prints a new line every three numbers like: 如何设置arraylist的格式,以便每三个数字输出一个新行,例如:

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

etc 等等

Try using this... 尝试使用这个...

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();
        }

    } 

Output: 输出:

-221.5, -221.6, -221.7, -221.5,-221.6,-221.7,
-221.8, -221.9, -221.1, -221.8,-221.9,-221.1,

Is a group of three numbers some meaningful quantity or entity in your application (they look like some kind of coordinate to me!)? 三个数字组成的组在您的应用程序中是否是有意义的数量或实体(对我来说,它们看起来像某种坐标!)? If so just combine them into an object. 如果是这样,请将它们组合成一个对象。

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());
}

Otherwise use @x4rf41's suggestion. 否则,请使用@ x4rf41的建议。

for(int i=0;i<arr.length;i++) {
    outputFile.print(arr[i]+" ");
    if(i%3==2) {
        outputFile.println();
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM