有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何增加StringBuffer的大小?

我想根据代码中的要求设置StringBuffer对象的大小

 StringBuffer sb = new StringBuffer();

 for (List<Integer> l : lists)
 {
   sb.delete(0, sb.length());
   //here i want to set size of sb according to l.size()
 }

我想在每次迭代中设置不同的大小


共 (1) 个答案

  1. # 1 楼答案

    如果希望用StringBuffer的大小初始化List,只需通过将大小传递为int来初始化它:

    StringBuffer sb = new StringBuffer(l.size());
    

    编辑

    如果需要根据List中的值动态设置大小,可以使用以下习惯用法:

    List<Integer> l = new ArrayList<Integer>(Arrays.asList(new Integer[]{1,2,3}));
    StringBuffer sb = new StringBuffer();
    for (int i: l) {
        sb.setLength(i);
    }
    

    旁注

    除非在多线程上下文中对StringBuffer进行变异,否则不需要使用它

    你可以用StringBuilder代替