Hello friend, I'm|

Ritchie里其

园龄:2年6个月粉丝:4关注:7

练习题06List

  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");
}
}
}

本文作者:Ritchie里其

本文链接:https://www.cnblogs.com/wang-zeyu/p/16794380.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   Ritchie里其  阅读(27)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
✨欢迎你~🍻
✨欢迎你~🍻
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 遥か Aimer
遥か - Aimer
00:00 / 00:00
An audio error has occurred.

作词 : aimerrhythm/田中ユウスケ

作曲 : 田中ユウスケ

编曲 : 玉井健二/百田留衣

海岸線の雨に ちらばった君の影

思い出が交差する 海辺の街

君はあの日のまま いまも夢を見てた

君はあの日のまま いまも夢を見てた

遥か記憶の空 2人照らす光

遥か記憶の空 2人照らす光

膝までの浅瀬で 見つけた星

君まで届くなんてさ ありえないような

浅い眠りの中で 深い夢から覚めて

浅い眠りの中で 深い夢から覚めて

裸足のまま駆けてく まばゆい星

君はあの日のまま どんな夢を見てた?

君はあの日のまま どんな夢を見てた?

遥か記憶の空 2人照らす光

遥か記憶の空 2人照らす光

いつまでもこうして 笑っててほしい

夜空に舞い上がる 幾千の花びら

でたらめな誓いで 生きてく日々

君から届くなんてさ ありえないような