有 Java 编程相关的问题?

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

java有序二叉树,使用树排序按升序打印字符串

好的,我的目标是从标准输入中逐行读取(每行上只有一个字符串),将它们插入到树中,然后按升序对字符串进行排序并打印出来。它会打印

java.util.ArrayList$Itr@659e0bfd

问题: 这是什么意思

return elementsList.iterator();

??我怎样才能在我的主要工作中使用它

public class OBTComparable<Type extends Comparable<Type>>
{
  ... 
  private Type data;
  ...
  public Iterator elementsAscending()
  {
    ArrayList<Type> elementsList = new ArrayList<Type>();
    addElementsAscending(elementsList);
    return elementsList.iterator();
  } // elementsAscending

  private void addElementsAscending(List elementsList)
  {
    if (!empty)
    { 
      left.addElementsAscending(elementsList);
      elementsList.add(data); 
      right.addElementsAscending(elementsList);
    } // if
  } // addElementsAscending 

现在主要是:

public static void main(String[] args)
{
  OBTComparable<String> obt = new OBTComparable<String>();
  BufferedReader reader
    = new BufferedReader(new InputStreamReader(System.in));

  try
  {
    String line;
    while ((line = reader.readLine()) != null)
      obt.insert(line);
    obt.elementsAscending();
    System.out.println(obt.elementsAscending()); 
    ////// NEED HELP HERE /////


  } catch (IOException e) { System.out.println(e); };  

共 (1) 个答案

  1. # 1 楼答案

    好吧,我修好了

    String line;
      while ((line = reader.readLine()) != null)
          obt.insert(line);
        Iterator<String> t = obt.elementsAscending();
        while (t.hasNext())
        {
          String item = t.next();
          System.out.println(item);
        }
    

    现在感觉很好:D