StringBuffer vs正常打印

问题描述 投票:0回答:1

为什么要在循环中打印数组项,而不是将所有数组项附加到StringBuffer然后打印呢?

在此,我在循环中打印了数组项。

public static void main (String[] args) {
    Scanner scan=new Scanner(System.in);
    int count=scan.nextInt();
    for (int i=0;i<count;i++) {
        int arrlen=scan.nextInt();
        int rotate=scan.nextInt();
        int revarr[]=new int[arrlen];
        for (int j=0;j<arrlen;j++) {
            revarr[(arrlen-rotate+j)%arrlen]=scan.nextInt();
        }
        for (int j:revarr) {
            System.out.print(j+" ");
        }   
        System.out.println();
    }
}

在此,我将数组项附加到StringBuffer中,然后打印。

public static void main (String[] args) {
    Scanner scan=new Scanner(System.in);
    int count=scan.nextInt();
    for (int i=0;i<count;i++) {
        int arrlen=scan.nextInt();
        int rotate=scan.nextInt();
        int revarr[]=new int[arrlen];
        for(int j=0;j<arrlen;j++){
            revarr[(arrlen-rotate+j)%arrlen]=scan.nextInt();
        }
        StringBuffer s = new StringBuffer();
        for (int j:revarr){
            s.append(j+" ");
        }   
        System.out.println(s);
    }
}
java stringbuffer
1个回答
0
投票

打印到System.out中是一个相当长的操作,并且添加到StringBuffer很快。 StringBuffer用于连接字符串

© www.soinside.com 2019 - 2024. All rights reserved.