-2

我有一个问题,我现在无法让它工作,让我们在代码中解释一下,谢谢。

这是我的课:我想做的是在没有逗号的列中插入整数对列表和缓冲区写入器进行排序。现在我得到这个: [1110018, 1110032, 1110056, 1110059, 1110063, 1110085, 1110096, 1110123, 1110125, 1110185, 1110456, 1110459] 我

想要这样的:
111xxxxxx
111xxxxxx 1。

我不能在单个数组中执行此操作,必须在 ArrayList 中。
这是我的收藏:
list.addNumbers(numbers);
列表.显示();

这是我的作家: 缓冲
coma.write("\n"+list.display());
coma.flush();

* *public class IdCount {
私有 ArrayList 正确编号 = new ArrayList<>();

 public void addNumbers(Integer numbers) {<br/>
properNumber.add(numbers);**<br/>  

Collections.sort(properNumber);
}
public String display() {
(我尝试 .toString() 不行)
return properNumber.toString();

      }**  

我的第二个问题是 LineNumberReader:这是我的收集和写作:
尝试 {
Reader input = new BufferedReader( new FileReader(inputFile));
try (Scanner in = new Scanner(input)) {
while (in.hasNext()) {
(更多代码)
asp = new LineNumberReader(input);
内部ROM = 0;

              while (asp.readLine()!=null){<br/>
                  rom++;<br/>
              }
          System.out.println(rom);<br/>coma.write(rom);<br/>

这个没有写任何东西,我的系统打印在列中只给我 12 0。
感谢您的帮助。任何帮助将不胜感激。

4

1 回答 1

1

我想要这样:
111xxxxx
111xxxx
xxxx.......

然后在编写您的显示方法如下:

public String display() {
  StringBuilder sb = new StringBuilder();
  Iterator i = properNumber.iterator();
  while(i.hasNext()){
   sb.append(i.next);
   sb.append("\n");
  }

  return sb.toString();
}

解释:

你在做什么 :

return properNumber.toString();将返回一个字符串,其中包含properNumber逗号分隔的所有值。所以这就是为什么你得到那个输出。

我做了什么

制作了一个StringBuilder对象,以便我可以在返回所有值之前临时存储字符串。

然后我创建了一个迭代器,它遍历 properNumber然后将每个条目附加到StringBuilder对象并附加\n在它之后。

最后,当迭代器完成时,我已经properNumberStringBuilderobject中添加了所有条目sb。所以现在我将返回sbas Stringusingsb.toString()方法的内容。

于 2012-11-20T16:55:14.643 回答