Java之HashMap编程题——2017.11.18
来源:互联网 发布:淘宝童装店简介怎么写 编辑:程序博客网 时间:2024/06/05 14:33
一、统计字符串中字符出现的次数(数字、字母、汉字都可以)
package com.westos.GuessNumber;import java.util.Scanner;/** * 猜数字:随机生成1-100之间的数字。由用户输入值进行比对,返回猜测的次数 * 不足:无法完成连续多次持续玩游戏。 * @author 大虾 * */public class GuessNumber { public static int getRandom (int start,int end) { return (int) (Math.random()*(end-start)+start); } public void guessNumber() { System.out.println("============猜数字游戏开始=========\n"); System.out.println("请输入1-100之间的数字"); int random = getRandom(1, 100); int count = 0; while(true) { Scanner sc = new Scanner(System.in); String str = sc.next(); Integer num = Integer.parseInt(str); if(num == 0) { System.out.println("再玩一次!"); guessNumber(); break; } if(num == -1) { System.out.println("游戏结束,再见!"); System.exit(0); } if(num > random) { System.out.println("您输入的值" + num + "大了" ); count++; } if(num < random) { System.out.println("您输入的值" + num + "小了"); count++; } if(num == random) { count++; System.out.println("Congratulations!经过"+ count + "次, 您猜对了"); System.out.println("======Continue? 0继续/-1退出=========\n"); continue; } } } public static void main(String[] args) { GuessNumber gn = new GuessNumber(); gn.guessNumber(); } }
二、集合的嵌套遍历(万剑不离其宗,只举一个例子)
package org.wests.HomeWork03;import java.util.HashMap;/** * 集合的嵌套 * A:案例演示 集合嵌套之HashMap嵌套HashMap 网星软件 jc 基础班 张三 20 李四 22 jy 就业班 王五 21 赵六 23 * @author 代虎 * */public class HomeWork01 { public static void main(String[] args) { HashMap<String,HashMap<String,Integer>> map = new HashMap<String, HashMap<String,Integer>>(); HashMap<String, Integer> hashMap01 = new HashMap<String,Integer>(); hashMap01.put("张三", 20); hashMap01.put("李四", 22); HashMap<String, Integer> hashMap02 = new HashMap<String,Integer>(); hashMap02.put("王五", 21); hashMap02.put("赵六", 23); map.put("基础班", hashMap01); map.put("就业班", hashMap02); for(String str:map.keySet()) { System.out.println(str); for(String str01:map.get(str).keySet()) { System.out.println("\t" + str01 + map.get(str).get(str01)); } } }}
三、编写程序完成斗地主模式
package com.westos.chinesePoker;import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Set;import java.util.TreeSet;/** *加强版的斗地主 EnhancedVersion *在version1.0的基础上加入扑克排序. * @author 大虾 * @version 2.0 */public class ChinesePokerEnhanced { public static void main(String[] args) { //0-53代表每个对应的扑克 Map<Integer, String> map = new HashMap<Integer,String>(); List<String> list = new ArrayList<>(); String[] color = {"♥","♠","♣","◆"}; String[] num = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"}; for(String str:num) { for(String str1:color) { String poker = str1.concat(str); list.add(poker); } } list.add("♀"); list.add("♂"); for(int i=0;i<54;i++) { map.put(i, list.get(i)); } Set<Integer> keyset = map.keySet(); List<Integer> list1 = new ArrayList<>(); for(Integer count:keyset){ list1.add(count); } //洗牌三次 Collections.shuffle(list1); Collections.shuffle(list1); Collections.shuffle(list1); Set<Integer> player01 = new TreeSet<>(); Set<Integer> player02 = new TreeSet<>(); Set<Integer> player03 = new TreeSet<>(); Set<Integer> dipai = new TreeSet<>(); //发牌 for(int i=0;i<list1.size();i++) { if(i<51&&i%3 == 0) { player01.add(list1.get(i)); } if(i<51&&i%3 == 1) { player02.add(list1.get(i)); } if(i<51&&i%3 == 2) { player03.add(list1.get(i)); }if(i>=51) dipai.add(list1.get(i)); } //玩家一的牌 System.out.println("玩家一:"); for(Integer i:player01) { System.out.print(map.get(i)+" "); } System.out.println("\n玩家二:"); //玩家二的牌 for(Integer i:player02) { System.out.print(map.get(i)+ " "); } System.out.println("\n玩家三:"); //玩家三的牌 for(Integer i:player03) { System.out.print(map.get(i)+ " "); } System.out.println("\n底牌:"); //玩家一的牌 for(Integer i:dipai) { System.out.print(map.get(i)+ " "); } }}
阅读全文
0 0
- Java之HashMap编程题——2017.11.18
- Java之HashMap简答题——2017.11.18
- Java并发编程 之 HashMap线程不安全
- Java——HashMap
- java核心之集合框架——HashMap源码分析
- JAVA学习之——HashMap实现原理
- 7Java学习笔记之数据结构——HashMap
- Android Gems — Java源码分析之HashMap和SparseArray
- java collection之 HashMap
- Java集合之HashMap
- java学习之hashMap
- java集合之HashMap
- Java源码之HashMap
- java集合之HashMap
- java集合之HashMap
- Java容器之HashMap
- Java之HashMap
- java之hashMap浅析
- 使用JavaScript脚本控制媒体播放
- WZYCalendar实现日历效果
- matplotlib polar 雷达图
- HTML5的音频和视频监听器应用
- sql数据库字段和关键字冲突的问题解决
- Java之HashMap编程题——2017.11.18
- 谷歌浏览器查看HTML文档和DOM视图的对应关系
- 设计模式之适配器模式
- spring mvc mybatis shiro构建cms系统
- 回调函数详谈
- 删除表格的行或单元格
- [C]去除数组中重复数字,并可按需保留多少个重复数字
- 一级购物车逻辑
- meanshift跟踪算法