当前位置: 代码迷 >> Java相关 >> 那一个比较常用啊
  详细解决方案

那一个比较常用啊

热度:127   发布时间:2005-08-25 12:39:00.0
那一个比较常用啊
我们在集合框架中比较常用的是哪种集合框架呢?
ArrayList,LinkedList,HashSet,TreeSet,
Stack ,Hashtable.
还有他们主要处理那一中类型的数据?
搜索更多相关的解决方案: 框架  

----------------解决方案--------------------------------------------------------
天一, 哪一种都可以,取决于你的实现的要求, 比如,如果要想 insert, remove 比较快呢,就用 LinkedList,因为对于一个list 来讲,element之间是手牵手联系着的,所以当你添加或删除一个element 时不必对 element作移位的动作,这样执行的效率就高。我记得在这个论坛上贴出过我自己写的一个DLList,程序的完美性绝不会输给 Sun 的那个LinkedList . HashSet, HashMap, Hashtable 主要是搜寻的效率很高,因为它遍历的只是element 的index, 而其内容是不看的,是不是这样就很看. 通常 ArrayList 和 Vector 被使用的几率很高. Stack 主要是先进后出的原则,或者说后进先出的原则,取决于是否合适于你的算法.
----------------解决方案--------------------------------------------------------
我想问你一个一下,你学编程几年了,为什么这样好呢?有什么好的学习方法吗?
----------------解决方案--------------------------------------------------------
我学Java 的时间不长,大概一年吧,也是学校课程的需要所以学了Java,当然还有很多自己也不懂。
我学C/C++ 的时间较长,应该有5年了,我始终没有停止过对C/C++ 的学习,所以相对来讲,学习Java时就觉得容易很多。对算法和数据结构也学了一下,但没有用功,所以相对来讲,通常我解题时,算法都是自己思考,这样就会速度慢些,也就是说,我不是算法的熟练工,碰到一些需要特殊算法的问题时,就临时抱佛脚去翻算法方面的书。我觉得作为一名程序员需要的是灵性,当然我也不排斥算法的熟练性,能熟练终归是好的。
你提的那个学习方法的问题,今天在C++ 教室板块也有人提了,我提了一些我的个人想法,你有兴趣可以看看。
----------------解决方案--------------------------------------------------------

我有一个问题是类的单例模式为什么不能实现呢? //单列模式的框架 abstract class class1 { public static class1 cla;

static String str=""; private static Boolean headless; protected class1() { }

public static synchronized class1 getClass1() { return cla; } public void mat(String a) { str=a; System.out.println(str); } }

class clss2 {

public static void main(String args[]){ try { class1 a=class1.getClass1(); System.out.println(a.toString()); a.mat("aaa"); class1 b=class1.getClass1(); b.mat("bbb"); class1 c=class1.getClass1(); c.mat("ccc");

System.out.println(a.str); } catch(Exception e) { System.out.println(e.toString()); }

}

}


----------------解决方案--------------------------------------------------------
我想问你你c#精通吗?
----------------解决方案--------------------------------------------------------
那个操作符重载应该怎样理解啊?

----------------解决方案--------------------------------------------------------
c# 没有学过,不打算学,样样都学学不过来啊。
----------------解决方案--------------------------------------------------------
// 你的5楼的程序修改如下:
class class1
{
  public static class1 cla;

  static String str="";
  private static Boolean headless;

  
  protected class1()
  {
  }
   
  public static synchronized class1 getClass1()
  {
    return cla = new class1();
  }
  public void mat(String a)
  {
    str=a;
    System.out.println(str);
  }
}

class class2
{
  public static void main(String args[])
  {
    try
    {
      class1 a = class1.getClass1();
      System.out.println(a.toString());
      a.mat("aaa");
   
      class1 b=class1.getClass1();
      b.mat("bbb");
      class1 c=class1.getClass1();
      c.mat("ccc");

      System.out.println(a.str);
    }
    catch(Exception e)
    {
      System.out.println(e.toString());
    }
  }
}
----------------解决方案--------------------------------------------------------
这样修改就没意义了。
我想让第一个类是抽象类。
而不是去掉这个抽象类。
还有其他方法吗/
----------------解决方案--------------------------------------------------------
  相关解决方案