头歌 学习-Java集合类之Collection接口之往集合中添加元素 12-1

任务描述

本关任务:创建任意集合并往集合中添加元素。

相关知识

为了完成本关任务你需要知道:

1.集合是什么;

2.为什么使用集合;

3.怎么创建集合;

4.如何向集合中添加数据。

集合是什么

JAVA 中的集合:是一个工具类,就像是容器,存储任意数量具有共同属性的集合。

图1 集合

例如:购物车是商品的集合,军队是军人的集合。

集合与数组的区别

我们已经知道集合就是能存储大量数据的一个容器,但是咱们在 JAVA 入门的时候学过数组,数组也是一个能存储大量数据的容器,好像也可以满足日常开发的需求,那我们为什么要使用集合呢?

图2 数组与集合的区别

如果说之前学习的数组是一根打狗棒的话,那我们将要学习的集合就可以看做是一根如意金箍棒了(集合长度可变,数组长度不可变)。

集合和数组有如下区别:

  • 数组的长度固定,集合的长度可变;

  • 数组只能通过索引访问元素,类型固定,而有的集合可以通过任意类型查找所映射的具体对象。

Collection接口

Java 中的集合分为两大家族,一个是 Collection 家族,一个是 Map 家族,其中 Collection 家族有三大成员:List、Queue 和 Set,这三大成员有四个常用子类(如下图 3 所示):ArrayList、LinkedList、HashSet、SortedSet。这个家族有一个特点,即集合中的元素都是单个存在的。

图3 Collection接口

怎么创建集合

我们以 Arraylist 为例,创建一个存储字符串的集合:

1.导包

import java.util.ArrayList;

2.创建集合

import java.util.ArrayList;     // 导包

public class CollTest {
    public static void main(String[] args) {
        // 创建一个存储字符串的ArrayList集合
        ArrayList list = new ArrayList<String>();
    }
}

向集合中添加数据

使用集合对象调用 add() 方法即可。

import java.util.ArrayList;     // 导包

public class CollTest {
    public static void main(String[] args) {
        // 创建一个存储字符串的ArrayList集合
        ArrayList list = new ArrayList<String>();
        // 向集合中添加元素
        list.add("hello");
        list.add(2018);
        // 打印集合
        System.out.print(list);
    }
}

执行结果:

[hello, 2018]

编程要求

仔细阅读右侧编辑区内给出的代码框架及注释,在 Begin-End 间编写程序代码,创建任意集合并往集合中添加元素,具体要求如下:

  • 接收给定的一行字符串(如:kiko kill s);

  • 通过空格(一个)切割字符串;

  • 创建任意一种类型的集合;

  • 将切割后的字符串元素添加进集合;

  • 打印集合元素。

测试说明

平台将使用测试集运行你编写的程序代码,若全部的运行结果正确,则通关。

例:测试输入:

kiko kill s

预期输出:

[kiko,kill,s]

代码实现

方法一

/*
* 任务:接收给定的一行字符串,实现如下需求:
1.通过空格(一个)切割字符串;
2.创建任意一种类型的集合;
3.将切割后的字符串元素添加进集合;
4.打印集合。
* */
import java.util.*;
import java.util.*;

public class CollTest {
    public static void main(String[] args) {
        // 请在Begin-End间编写代码
            /********** Begin **********/
            // 第一步:接收给定的一行字符串
            Scanner scanner = new Scanner(System.in);
            // 第二步:切割字符串
            String str = scanner.nextLine();
            String[] strArray = str.split("\\s+");
            // 第三步:创建集合
            ArrayList<String> strList = new ArrayList();
            // 第四步:往集合中添加元素
            for (int i = 0; i < strArray.length; i++) {
                strList.add(strArray[i]);
            }
             //第五步:打印集合元素
            System.out.print(strList);
            /********** End **********/

    }
}

方法二

package atguigu.com.java;/*
* 任务:接收给定的一行字符串,实现如下需求:
1.通过空格(一个)切割字符串;
2.创建任意一种类型的集合;
3.将切割后的字符串元素添加进集合;
4.打印集合。
* */

import java.util.Arrays;
import java.util.Collection;
import java.util.Scanner;

public class CollTest {
    public static void main(String[] args) {
        // 请在Begin-End间编写代码
        /********** Begin **********/
        // 第一步:接收给定的一行字符串
        Scanner scanner = new Scanner(System.in);
        // 第二步:切割字符串
        String str = scanner.nextLine();
        String[] strArray = str.split("\\s+");
        // 第三步:创建集合
        Collection coll = Arrays.asList(strArray);
        System.out.println(coll);
        // 第四步:往集合中添加元素
//        for (int i = 0; i < strArray.length; i++) {
//            strList.add(strArray[i]);
//        }
//        //第五步:打印集合元素
//        System.out.print(strList);
//        /********** End **********/

    }
}

知识点

  1. 键盘输入字符串及接收

  1. 利用split()函数进行分割字符串

  1. 集合的创建及遍历打印

  1. Arrays.asList():将数组转化为集合 其中使用时有很多注意点(返回类型为List或者Collection)

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值