两个问题:
1。我要存储字符串,有很多个字符串,且不知道究竟有多少个。
这种情况下:String[]就不能用了,因为不知道个数,没办法定义和初始化。问:用什么有效的方法解决这个问题?2。我现在用Vector来存,存是存了,要取好像也不容易。
如:Vector typeT = new Vector();
typeT.add("asdfaf");//为了说明问题临时表示为一个字符串
System.out.println(typeT.get(0));//可以正确显示为asdfaf
typeTotal[0] = (String)typeT.get(0);或者typeTotal[0] = typeT.get(0).toString();
System.out.println(typeTotal[0]);//显示出类似于内存地址的[Ljava.lang.String;@18a49e0。问:我又该怎么取出来呢?

解决方案 »

  1.   

    1 你可以用List呀,比如arraylist2 要这么取
      Vector typeT = new Vector();
      typeT.add("asdfaf");
      System.out.println(typeT.get(0));
      

  2.   

    Vector typeT = new Vector(); 
    typeT.add("asdfaf");//为了说明问题临时表示为一个字符串 
    System.out.println(typeT.get(0));//可以正确显示为asdfaf 
    String s = typeT.get(0).toString();//或者typeTotal[0] = typeT.get(0).toString(); 
    System.out.println(s);
    这样没有问题呀
      

  3.   

    对不起,忘了说明:
    String[] typeTotal = new String[typeT.size()];//是一个String数组,长度由typeT.size()决定。我的做法是先用Vector存起来,最后还是要转存到String[]里面去。
      

  4.   

    ArrayList list = new ArrayList();
    list.add(arg0);可以这么写
      

  5.   

    1、应该用ArrayList效率最高,
    需要同步 的话,用collections.XXX的方法生成(名字忘了,lz去查api吧)2、问题同一楼,typeTotal[0]像 是一个Listgood luck
      

  6.   

    LZ要转换成字条串数组,可以这样的ArrayList list = new ArrayList();
    list.add("abcd");String[] typeTotal = list.toArray(new String[0]);System.out.println(typeTotal[0]);
      

  7.   

    ArrayList<String> list = new ArrayList<String>();
    list.add("abcd"); String[] typeTotal = list.toArray(new String[0]); System.out.println(typeTotal[0]);
      

  8.   

    无法确定个数,当然是使用链表
    JAVA集合中提供的链表实现类是LinkedList,可以无限存储对象(前提是有足够的内存)
    要取也很容易,有个get(int index) 返回此列表中指定位置处的元素。
    至于想做其他的操作,查下API文档
      

  9.   

    最好使用ArrayList!下面是如何添加,访问,以及最后转化成数组import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    public class Test {
       public static void main(String[] args){
      List<String> list=new ArrayList<String>();
      list.add("aaa");
      list.add("bbb");
      System.out.println(list.get(0));
      System.out.println(list.get(1));
      for(String str:list)
      System.out.println(str);
      String[] result=list.toArray(new String[0]);
      System.out.println(Arrays.toString(result));
       }
    }