首页 > 其他分享 >练习题06List

练习题06List

时间:2022-10-15 16:12:26浏览次数:43  
标签:练习题 String iterator int 06List list add List

  1. 分析以下需求,并用代码实现:
    (1)有如下代码:
    (2)定义方法统计集合中指定元素出现的次数,如"a" 3,"b" 2,"c" 1
List<String> list = new ArrayList<>();
list.add("a");
list.add("a");
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
list.add("d");
list.add("d");
list.add("d");
list.add("d");

System.out.println(frequency(list, "a"));	// 3
System.out.println(frequency(list, "b"));	// 2
System.out.println(frequency(list, "c"));	// 1
System.out.println(frequency(list, "d"));	// 5
System.out.println(frequency(list, "xxx"));	// 0
  1. 分析以下需求,并用代码实现:
    (1)生成10个1至100之间的随机整数(不能重复),存入一个List集合
    (2)编写方法对List集合进行排序
    (2)然后利用迭代器遍历集合元素并输出
    (3)如:15 18 20 40 46 60 65 70 75 91

  2. 分析以下需求,并用代码实现:
    (1)定义List集合,存入多个字符串,其中包含三个连续的"def"
    (2)删除集合中字符串"def"
    (3)然后利用迭代器遍历集合元素并输出

  3. 分析以下需求,并用代码实现:
    (1)定义List集合,存入多个字符串
    (2)删除集合中元素(只要字符串中包含z或者是m中的任意一个字符就需要删除此整个字符串)
    (3)然后利用迭代器遍历集合元素并输出

1、
   public static int frequency(List<String> list, String s) {
        //定义一个变量i来统计次数
        int i = 0;
        for (String str : list) {
            if (str.equals(s)) {
                i++;
            }
        }
        return i;
    }
2、
package com.xxx;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;

public class Exe2 {
    public static void main(String[] args) {
        //生成10个1至100之间的随机整数(不能重复),存入一个List集合
        List list = new ArrayList();
        for (int i = 0; i < 10; i++) {
            //随机数num
            int num = (int) (Math.random()*100+1);

            int m = 0;
            for (int j = 0; j < list.size(); j++) {
                int o = (int) list.get(j);
                if (o == num) {
                    m++;
                }
            }

            if (m == 0) {
                list.add(num);
            }
        }
        System.out.println(list);
        Bubbling(list);
        Test(list);
    }

    //排序
    public static List Bubbling(List list) {
        Collections.sort(list);
        return list;
    }

    //迭代器遍历集合并输出
    public static void Test(List list) {
        Iterator iterator = list.iterator();

        while (iterator.hasNext()) {
            int i = (int) iterator.next();
            System.out.print(i + " ");
        }

    }
}
3、
package com.xxx;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class Exe3 {
    public static void main(String[] args) {
        List list = new ArrayList();
        String[] strings = {"de", "ef", "def", "def", "def", "fd"};
        for (String s : strings) {
            list.add(s);
        }
        System.out.println(list);

        //删除集合字符串:"def"
        //方法一:不推荐
        for (int i = 0; i < list.size(); i++) {
            if (list.get(i).equals("def")) {
                list.remove(i);
                //移除元素后数组长度会减一
                i--;
            }
        }

        //方法二:倒序删
        for (int i = list.size() - 1; i >= 0; i--) {
            if (list.get(i).equals("def")) {
                list.remove(i);
            }
        }

        //方法三:迭代器删除(推荐)
        ListIterator listIterator = list.listIterator();
        while (listIterator.hasNext()) {
            String s = (String) listIterator.next();
            if (s.equals("def")) {
                listIterator.remove();
            }
        }

        //遍历输出
        Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            System.out.print(iterator.next() + "\t");
        }

    }
}

4、
package com.xxx;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Exe4 {
    public static void main(String[] args) {
        List list = new ArrayList();
        String[] ss = {"a", "b", "c", "z", "m", "zm", "d"};
        for (String s : ss) {
            list.add(s);
        }
        System.out.println(list);

        //删除集合中指定元素
        for (int i = 0; i < list.size(); i++) {
            String s = (String) list.get(i);
            if (s.contains("m") || s.contains("z")) {
                list.remove(i);
                i--;
            }
        }
        System.out.println(list);

        //遍历输出
        Iterator iterator = list.iterator();
        while (iterator.hasNext()) {
            System.out.print(iterator.next() + "\t");
        }
    }
}

标签:练习题,String,iterator,int,06List,list,add,List
From: https://www.cnblogs.com/wyzel/p/16794380.html

相关文章

  • 【C++从入门到熟练练习题】000 VS2015新建程序及输出Hello World
    一、前言大学很多计算机相关专业的基础课都会有C++,C++是比较经典的编程语言,编程语言一定不是看出来的,而是敲代码敲出来的。所以会给大家不定期分享一些C++练习题。在下一次......
  • 练习题02
    用程序判断2022年7月27日是星期几?使用SimpleDateFormat类,把2018-03-04转换成2018年03月04日创建一个表示从1970年1月1日0时0分1秒的Date类的对象,并获取该对象到1970年1......
  • 练习题01
    1、编写程序将"jdk"全部变为大写,并输出到屏幕,截取子串"DK"并输出到屏幕2、写一个方法判断一个字符串是否对称3、编写一个程序,将下面的一段文本中的各个单词的字母顺......
  • MySQL练习题2
    6,取得平均工资最高的部门的部门名称。selectd.dname,avg(e.sal)asavgsalfromempejoindeptdone.deptno=d.deptnogroupbyd.dnameorderbyavgsaldescli......
  • python练习题-数据类型-列表拼接,按指定字符串查找,首尾去空(三)
    1.问题描述。把下图中列表,元组,字典中的值,组成一个列表。并查找列表中元素,移除每个元素的空格,并查找以a或者A开头并且以c结尾的所有元素。li=["alec","aric","Alex","T......
  • MySQL练习题
    1,取得每个部门最高薪水的人员名称:1,先按照部门分组并求出每个部门的最大值,以及获取最大值的部门编号。作为临时表2,通过joinon连接两个表,使用子表中的部门编号和......
  • python练习题-数据类型
    1.利用下划线,把列表的每个元素拼接成一个字符串。lst=['Rose','Tom','Bye'];1.1python2解法:#coding=utf-8;#1.利用下划线,把列表的每个元素拼接成一个字符串lst......
  • 练习题:简单薪水计算器
    练习题:简单薪水计算器题目:薪水计算器:(1)通过键盘输入用户的月薪,每年是几个月薪水(2)输出用户的年薪(3)输出一行字“如果年薪超过10万,恭喜你超过90%的国人”,“如果年......
  • 【数据结构】时间复杂度和空间复杂度的练习题(仅供学习交流使用)
    习题:解:异或:相同为0相异为1     0和任何数异或都是那个数本身因为这个原理所以两个数交换可以考虑使用异或,不需要考虑顺序代码实现:(++i和i++结果是一样得,如果取返回......
  • 【UML】用例图、活动图、类图、顺序图练习题
    一、问题一“远程网络教学系统”的功能需求如下:学生登录网站后,可以浏览课件、查找课件、下载课件、观看教学视频。教师登录网站后,可以上传课件、上传教学视频、发布教学心......