题目一:

创建两个线性表,分别存储{“chen”,“wang”,“liu”,“zhang”}和{“chen”,“hu”,“zhang”},求这两个线性表的交集和并集。

代码:

List_Test.java

 /**
* 利用List<E>和Set<E>,求交集和并集;
*/
package cn.edu.ccut1;
import java.util.*; public class Test_List { public static void main(String[] args) {
ArrayList<String> L1 = new ArrayList<String>();
ArrayList<String> L2 = new ArrayList<String>();
L1.add("chen");
L1.add("wang");
L1.add("liu");
L1.add("zhang");
L2.add("chen");
L2.add("Hu");
L2.add("zhang");
ArrayList<String> Jj = new ArrayList<String>();
Jj.addAll(L1);
Jj.retainAll(L2); //将Jj中与L2中不相同的元素全部剔除;
System.out.println("交集是:"+Jj.toString());
HashSet<String> Bj = new HashSet<String>();
Bj.addAll(L1);
Bj.addAll(L2); //利用Set<E>唯一性的特点去除重复的元素取得并集;
System.out.println("并集是:"+Bj.toString());
}
}

运行结果:

题目二:

  编写一个应用程序,输入一个字符串,该串至少由数字、大写字母和小写字母三种字符中的一种构成,如“123”、“a23”、“56aD”、“DLd”、“wq”、“SSS”、“4NA20”,对输入内容进行分析,统计每一种字符的个数,并将该个数和每种字符分别输出显示。如:输入内容为“34Ah5yWj”,则输出结果为:数字——共3个,分别为3,4,5;小写字母——共3个,分别为h,y,j;大写字母——共2个,分别为A,W。

代码:

Map_Test.java

 package cn.edu.ccut2;
import java.util.*; public class Map_Test { public static void main(String[] args) {
System.out.println("请输入一个字符串:");
HashMap<String, String> M = new HashMap<String, String>();
Scanner r = new Scanner(System.in);
String str = r.nextLine();
int length = str.length();
String c;
int count_num = 0; //统计数字,小写字母,大写字母的个数;
int count_A = 0;
int count_a = 0;
for(int i = 0 ; i < length ; i++){
c = str.substring(i, i+1);
if(c.matches("\\d")){//判断是否为数字;
if(M.get("数字")==null){
M.put("数字", c);
}
else{
M.put("数字", M.get("数字")+","+c);
}
count_num++;
}
if(c.matches("[a-z]")){//判断是否为小写字母;
if(M.get("小写字母")==null){
M.put("小写字母", c);
}
else{
M.put("小写字母", M.get("小写字母")+","+c);
}
count_a++;
}
if(c.matches("[A-Z]")){//判断是否为大写字母;
if(M.get("大写字母")==null){
M.put("大写字母", c);
}
else{
M.put("大写字母", M.get("大写字母")+","+c);
}
count_A++;
}
}
Set set = M.entrySet(); //返回包含映射中项的集合;
Iterator it = set.iterator(); //获取迭代对象;
while(it.hasNext()){
Map.Entry me = (Map.Entry)it.next();
System.out.print(me.getKey());
if(me.getKey().equals("数字")){
System.out.print("——共"+count_num+"个,");
}else if(me.getKey().equals("小写字母")){
System.out.print("——共"+count_a+"个,");
}else if(me.getKey().equals("大写字母")){
System.out.print("——共"+count_A+"个,");
}
System.out.println("分别为"+me.getValue());
}
}
}

运行结果:

List<E> 、Set<E>和Map<K,E>的简单应用的更多相关文章

  1. cocos基础教程(5)数据结构介绍之cocos2d::Map<K,V>

    1.概述 cocos2d::Map<K,V> 是一个内部使用了 std::unordered_map的关联容器模版. std::unordered_map 是一个存储了由key-value ...

  2. 关于jsp利用EL和struts2标签来遍历ValueStack的东东 ------> List<Map<K,V>> 以及 Map<K,<List<xxx>>> 的结构遍历

    //第一种结构Map<K,<List<xxx>>> <body> <% //显示map<String,List<Object>& ...

  3. JDK源码(1.7) -- java.util.Map<K,V>

     java.util.Map<K,V> 源码分析 --------------------------------------------------------------------- ...

  4. Map<k,v>接口

    https://docs.oracle.com/javase/8/docs/api/java/util/Map.html public interface Map<K,V> K—key,V ...

  5. 随笔1 interface Map<K,V>

    第一次写笔记就从map开始吧,如上图所示,绿色的是interface,黄色的是abstract class,蓝色的是class,可以看出所有和图相关的接口,抽象类和类的起源都是interface ma ...

  6. Cocos2d-x之Map<K, V>

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. Map<K, V>是Cocos2d-x 3.0x中推出的字典容器,它也能容纳Ref类型.Map<K,V>是模仿C+ ...

  7. JS Map 和 List 的简单实现代码

    javascript中是没有map和list 结构的. 本篇文章是对在JS中Map和List的简单实现代码进行了详细的分析介绍,需要的朋友参考下 代码如下: /* * MAP对象,实现MAP功能 *  ...

  8. 编写函数求整形数组a中存储的m个不重复的整数的第k大的整数(其中m>=1,1<=k<=m)很简单的一个思路是酱紫的:管他辣么多干啥,上来一把排序然后直接得答案

    /** * @author:(LiberHome) * @date:Created in 2019/2/28 20:38 * @description: * @version:$ *//*编写函数求整 ...

  9. Mybatis返回List<Map<K,V>>

    最终映射的字段名 会被作为 hashMap 的 key , <!-- TODO 测试返回 HashMap--> <resultMap id="testResultMap&q ...

随机推荐

  1. LibreOJ 6277. 数列分块入门 1 题解

    题目链接:https://loj.ac/problem/6277 题目描述 给出一个长为 \(n\) 的数列,以及 \(n\) 个操作,操作涉及区间加法,单点查值. 输入格式 第一行输入一个数字 \( ...

  2. 31.用python中的serial向串口发送和接收数据(案例一)

    代码功能说明:1.向串口助手发送十六进制数据:0X01,0X03,0X00,0X00,0X00,0X01,0X84,0X0A: 2.用串口助手向代码发送数据,并将发送过来的数据保存在数据库中,按数据和 ...

  3. CentOS6.5源码安装mysql-5.5.21

    本文参考自 http://www.cnblogs.com/ShanFish/p/6531365.html,但不局限于它. 一. 卸载旧版本 .检查是否安装mysql组件 # rpm -qa | gre ...

  4. C#调用JS的WebService的方法返回null

    连上了别人的VPN后,使用WebService测试软件测试了一下,结果正常,但是当我在vs里面添加WebService服务,调用的时候就出现了问题,问题如下图: 后来问了一下服务端那边的同事,他们说服 ...

  5. JVM之JVM的体系结构

    一.JDK的组成 JDK:JDK是Java开发工具包,是Sun Microsystems针对Java开发员的产品.JDK中包含JRE(在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin ...

  6. dp-最长递增子序列 (LIS)

    首先引出一个例子 问题 : 给你一个长度为 6 的数组 , 数组元素为 { 1 ,4,5,6,2,3,8 } , 则其最长单调递增子序列为 { 1 , 4 , 5 , 6 , 8 } , 并且长度为 ...

  7. 字典树(增删改查 HDU 5687)

    度熊手上有一本神奇的字典,你可以在它里面做如下三个操作: 1.insert : 往神奇字典中插入一个单词 2.delete: 在神奇字典中删除所有前缀等于给定字符串的单词 3.search: 查询是否 ...

  8. 发布到远程存储库时遇到错误: Git failed with a fatal error.

    正在推送 master发布到远程存储库时遇到错误: Git failed with a fatal error.Authentication failed for 'http://1212121xxx ...

  9. Centos 7.2 Jenkins+Ansible+Gitlab 基础配置

    注意:首先准备jenkins服务器  如何搭建jenkins 由于上篇文章中jenkins是采用war并部署在tomcat中来完成的安装,所以这里隆重介绍下启动tomcat的用户:tomcat,下面会 ...

  10. 出现An App ID with Identifier 'com.XXX.XXX’ is not available. Please enter a different string.

    解决方法: 1.移除钥匙串中的开发证书,重新导入, 完全关闭Xcode; 2.再次打开Xcode,通过 Preferences - View Details - download 新的证书: 3.选择 ...