A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 徐启坤 于 2013-5-10 13:00 编辑

如题,就是在输入的时候并不知道会输入字符有多少,该怎么解决呢?

评分

参与人数 1技术分 +1 收起 理由
Sword + 1

查看全部评分

8 个回复

倒序浏览
java数组的创建是在运行的时候进行的,可以直接用new在数组里创建元素
回复 使用道具 举报
薛淑凯 发表于 2013-5-9 17:01
java数组的创建是在运行的时候进行的,可以直接用new在数组里创建元素

我想问的是如何解决输入,并不是数组的创建,就是在输入的时候并不知道会有多少数据会被输入该怎么办啊
回复 使用道具 举报
数组一旦建立,其大小就不可更改,是不能动态调整数组大小的;
根据你说的情况,建议采用集合的方式,如ArrayList,StringBuilder 也是不错的选择;
回复 使用道具 举报
楼主可以先用Stringbuilder或集合,然后再转换成数组
回复 使用道具 举报
各位,如何存储我知道了,那么怎么输入呢???
回复 使用道具 举报
  1. import java.util.ArrayList;

  2. public class JavaArrayList {
  3.        public static void main(String[]args) {
  4.                //Java动态数组的初始化
  5.                ArrayList al=new ArrayList();
  6.                //向J数组中添加数据
  7.                al.add("a");
  8.                al.add("b");
  9.                al.add("c");
  10.                //输出数组
  11.                for(int i=0;i<al.size();i++) {
  12.                         String alEach=(String)al.get(i);
  13.                          System.out.println(alEach);
  14.                }
  15.                //删除数组中的某个元素,删除第二个元素
  16.                al.remove(1);
  17.                //修改数组,把新的元素放到第二个位置
  18.                al.add(1,"2");
  19.                //输出数组
  20.                for(int i=0;i<al.size();i++) {
  21.                          String alEach=(String)al.get(i);
  22.                          System.out.println(alEach);
  23.                 }
  24.         }
  25. }
复制代码
这个能说明问题

评分

参与人数 1技术分 +1 收起 理由
Sword + 1

查看全部评分

回复 使用道具 举报
数组一旦创建,大小就已经确定。
你应该考虑的是几个类。比如实现了Collection的子类
|--ArrayList,创建后,随着元素的增加,可以扩大长度。好像是直接扩大原来的一倍(这个是确定的)
|--Vector,与ArrayList相同都是想了collection接口。长度不够时,扩大原来的一般。
相对而言,ArrayList是线程安全的。

评分

参与人数 1技术分 +1 收起 理由
Sword + 1

查看全部评分

回复 使用道具 举报
如果问题以解决,请及时修改分类。。谢谢合作
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马