java中的一个小问题

在控制台输入3段包含逗号的字符串,然后以逗号为分割
将这6段字符串存入数组中。要求只能用数组。我的代码是这样的,但是前两个字符串不知为啥被吃掉了,只有最后一个是正常的图片

7个回答

图片说明

xionglangs
编程爱好者熊浪 不用,大家都是码农而已,爱学习的人还是可以做好技术的。
大约 3 年之前 回复
sinat_25136209
sinat_bond 谢谢前辈~~可以在私信给我发支付宝~给您打赏
大约 3 年之前 回复

这个问题回答过你了,你没办法确定数组大小,可以预先开一个足够大的数组,当需要存放的内容超过这个数组的时候,再开一个更大的,并且复制。用一个变量记录你实际存放数据的数量。
实际上,如果你看list的源代码,它本身就是这么实现的。你不用它无非就是自己实现而已。

你的 i 有问题 第一次赋值之后i到了0,1, 但是你i++之后i是为1的 再给dd赋值的时候把前面的值给覆盖了

 public class test {

    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);

        int i=0;
        String[] bb;
        String[] dd=new String[6];
        int count=0;//计数器,1-6

        while(i<3){
            bb=in.next().split("[,\\n]");
            System.out.println(bb[0]+" "+bb[1]+" "+count);
            dd[count++]=bb[0];
            dd[count++]=bb[1];
            i++;
        }
        in.close();

        for(String temp:dd){
            System.out.println(temp);
        }

    }
}

zzhao114
zzhao_曌 回复sinat_bear: 不用不用 哈哈 如果有积分 送我点也是可以的 哈哈
大约 3 年之前 回复
sinat_25136209
sinat_bond 谢谢前辈~~可以在私信给我发支付宝~给您打赏
大约 3 年之前 回复

求前辈们解答,,看清楚题目的来,不一定按照我那样写的来实现,但是一定要只用数组来实现。有偿回答,按照时间顺序前三,能实现的支付宝5r打赏~。在自己的回答评论里面留支付宝

是按每个逗号作为分隔线将一段字符分隔成6部分是吧,这应该是先分隔再转化

可以试着用list,而且应该用到Map键值对图片说明

xionglangs
编程爱好者熊浪 弄错了
大约 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问