Java基础练习题7--【猜拳游戏,模拟双色球功能,统计词语次数,判断大写字母,敏感词过滤程序】
文章目录
- 1.猜拳游戏
- 2.模拟双色球摇奖功能
- 3.统计某个词语的出现次数
- 4.判断输入的字母是否为大写字母
- 5.编写敏感词过滤程序
1.猜拳游戏
1表示石头,2表示剪刀,3表示布
接收用户输入的拳 并输出 ,然后电脑随机产生一个数 对比输赢
欢迎来到游戏中心
请用户出拳(1表示石头,2表示剪刀,3表示布)
import java.util.Random;
import java.util.Scanner;
/*** @create 2021-05-17 19:01* 出拳游戏:1表示石头,2表示剪刀,3表示布* 接收用户输入的拳 并输出 ,然后电脑随机产生一个数 对比输赢* 欢迎来到游戏中心* 请用户出拳(1表示石头,2表示剪刀,3表示布)*/
public class ShiTouJiandaoBU {public static void main(String[] args) {ShiTouJiandaoBU stb=new ShiTouJiandaoBU();System.out.println("出拳游戏:1表示石头,2表示剪刀,3表示布");stb.game();}//用户:Y;电脑:C;public void game() {outer:for (int i = 0; i <100 ; i++) {Scanner s = new Scanner(System.in);System.out.println("请您出拳!");int Y = s.nextInt();System.out.println("电脑出拳");//这里用了Random类随机数的特点;Random r = new Random();//让电脑在1-3之间随机出拳;int C = (r.nextInt(3) + 1);System.out.println(C);//人类胜利时;if (Y == 1 && C == 2 || Y == 2 && C == 3 || Y == 3 && C == 1) {System.out.println("<用户出拳>----->" + check(Y) + "<电脑出拳>----" + check(C) + "<====用户胜利>");}//机子胜利时;else if (Y == 1 && C == 3 || Y == 2 && C == 1 || Y == 3 && C == 2) {System.out.println("<用户出拳>-----" + check(Y) + "<电脑出拳>-----" + check(C) + "<====电脑胜利>");}//用户和机子平局了else if (Y == 1 && C == 1 || Y == 2 && C == 2 || Y == 3 && C == 3) {System.out.println("平局");} else {//不小心输入了别的数字,提示无效;System.out.println("你们的比赛无效!请重新开始!");continue outer;}}}//进行检测出拳的识别;public String check(int q){if(q==1){return"石头";}if(q==2){return"剪子";}if(q==3){return"布";}else{return "无效的出拳";}}
}
2.模拟双色球摇奖功能
要求:每次随机从1-33的数字中随机取出5个不重复的数据
按照从小到大的顺序输出.
import java.util.Arrays;
import java.util.Random;
/*** @create 2021-05-17 19:25* 模拟双色球摇奖功能* 要求:每次随机从1-33的数字中随机取出5个不重复的数据* 按照从小到大的顺序输出.*/
public class CaiPiaoDemo {public static void main(String[] args) {shseQ();}//将模拟的双色球功能写在一个静态方法中;public static void shseQ(){//创建Random类;Random random =new Random();//创建数组;int[] array=new int[5];//定义数组的索引i;int i=0;while(true){//定义随机数r;(在1-33之间)int r=random.nextInt(33)+1;boolean res=true;for (int j = 0; j < array.length; j++) {if(array[j]==r){res=false;}}//当抽到重复数组时,取消输出;if(res){array[i]=r;i++;}//当提取到5个元素时;停止;if(i==5){break;}}//排序;Arrays.sort(array);//输出:System.out.print("您的号码为:");System.out.println(Arrays.toString(array));}
}
3.统计某个词语的出现次数
以下是一段歌词,请从这段歌词中统计出朋友出现的次数。
- “这些年一个人,风也过,雨也走,有过泪,有过错, 还记得坚持甚么,真爱过才会懂,会寂寞会回首,终有梦终有你在心中。
- 朋友一生一起走,那些日子不再有,一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂,还有伤,还有痛,还要走,还有我。”;
/***以下是一段歌词,请从这段歌词中统计出朋友出现的次数。* “这些年一个人,风也过,雨也走,有过泪,有过错, 还记得坚持甚么,真爱过才会懂,会寂寞会回首,终有梦终有你在心中。* 朋友一生一起走,那些日子不再有,一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂,还有伤,还有痛,还要走,还有我。”;*/
public class TongJiPengyou {public static void main(String[] args) {String s=new String("这些年一个人,风也过,雨也走,有过泪,有过错, 还记得坚持甚么,真爱过才会懂,会寂寞会回首,终有梦终有你在心中。 朋友一生一起走,那些日子不再有,一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂,还有伤,还有痛,还要走,还有我。");int number=0;String p="朋友";//定义开始索引和结束索引位置;int start=0;int end=0;while(true){//使用indexOf方法拿到"朋友"第一次出现的位置;start=s.indexOf("朋友",start);end=start+2;if(start>0){//使用substring进行截取判断;p=s.substring(start,end);start++;number++;}else{break;}}System.out.println("出现次数为"+number);/*//粗略计算出现3次;System.out.println("字符串长度为:"+s.length());//121int a1=s.indexOf(p,0);System.out.println("第一次获取的位置:"+a1);//57System.out.println(s.substring(a1,a1+2));int a2=s.indexOf(p,a1+2);System.out.println("第二次获取的位置:"+a2);//89System.out.println(s.substring(a2,a2+2));int a3=s.indexOf(p,a2+2);System.out.println("第三次获取的位置:"+a3);//99System.out.println(s.substring(a3,a3+2));int a4=s.indexOf(p,a3+2);System.out.println("第四次获取的位置:"+a4);//不存在System.out.println(s.substring(a4,a4+2));*/}
}
4.判断输入的字母是否为大写字母
从控制台输入一个字母,判断是否大写字母.
import java.util.Scanner;
/*** @create 2021-05-17 19:42* 从控制台输入一个字母,判断是否大写字母.*/
public class PanDuanZiMu {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);panduan(scanner);}//判断是否为大写字母的方法;public static void panduan(Scanner scanner){System.out.println("请输入一个字母");String s=scanner.next();//通过substring方法来获取到第一个字符;// 然后再用matches方法进行判断;//[A-Z] 是匹配大写字母;boolean res=(s.substring(0,1)).matches("[A-Z]");if(res==true){System.out.println("输入的是第一个字符是大写字母");}else{System.out.println("输入的第一个字符不是大写字母");}}
}
5.编写敏感词过滤程序
编写敏感词过滤程序 `说明:在网络程序中,聊天软件中,经常需要对一些用户所提交的聊天内容中的敏感性词语进行过滤。 这些都不可以在网上进行传播,需要过滤掉或者用其他词语替换掉。`
/*** 编写敏感词过滤程序* 说明:在网络程序中,如聊天室、聊天软件等,经常需要对一些用户所提交的聊天内容中的敏感性词语进行过滤。* 如“变性”、“涩情”、“爆炸的”、“恐怖的”、“***枪”、“军火的”等,这些都不可以在网上进行传播,需要过滤掉或者用其他词语替换掉。*/
public class GuoLvQi{public static void main(String[] args) {String s="兵器例如发现的某个的兵器的的人出现的枪械的活动时什么兵器dde212s兵器.";guolv(s);}//敏感词过滤程序public static void guolv(String s){String[] mgc={"发现了","变性","涩情","兵器","爆炸的","恐怖的","军火的","***枪"};for (int i = 0; i < mgc.length; i++) {for (int j = 0; j < s.length(); j++) {//字符串包含了敏感词时;if (s.contains(mgc[i])) {//遍历记录出现的位置,并且遍历字符串来调整位置int a = s.indexOf(mgc[i], j);//截取敏感字符;String s1 = s.substring(a, a + 3);//替换敏感词;s = s.replaceAll(s1, "???");}}}//输出过滤后的字符;System.out.println(s);}
}
Java基础练习题7--【猜拳游戏,模拟双色球功能,统计词语次数,判断大写字母,敏感词过滤程序】相关推荐
- java中编写敏感词过滤程序_Java敏感词过滤
一下实现对敏感词,禁忌词的过滤. 两个个文件words.properties和KeyWordFilter.java; 1.words.properties文件是个文本文件:内容如下: 敏感词一 敏感词 ...
- Java基础练习题11--[已知有十六支男子足球队参加2008 北京奥运会。 写一个程序,把这16 支球队随机分为4 个组,每组4只球队。采用List集合和随机数 2008 北京奥运会男足参赛国家:]
已知有十六支男子足球队参加2008 北京奥运会.写一个程序,把这16 支球队随机分为4 个组,每组4只球队.采用List集合和随机数;2008 北京奥运会男足参赛国家:科特迪瓦,阿根廷,澳大利亚,塞尔 ...
- java基础多线程抢红包_java多线程模拟抢红包功能
今天有朋友问我一道面试题,有5个人抢5个红包,可重复抢,用多线程程序实现,实现方式有多种,分享一下我的思路:应用了阻塞队列的特性. /** * Created by zhanglinqiang on ...
- Java练习 基于数组的敏感词过滤/用户注册合法性判定
用户注册 在注册时通常要验证用户名和密码是否合法,运用学习过的知识完成如下操作: 用户名长度大于等于6位 密码长度大于等于8位,必须包含英文字母以及数字 以上两个条件同时成立注册才能成功. packa ...
- Java初学之人机猜拳游戏
Java初学之人机猜拳游戏 1.要求 11. 任务 a) 完成人机猜拳互动游戏的开发 1.2. 主要功能 a) 选取对战角色 b) 猜拳 c) 记录分数 1.3. 需求说明 a) 分析业务 b) 抽象 ...
- Java基础练习题2
Java基础练习题2 1.编写一个类实现复数运算,至少包含复数加减乘除. 2.随机输出1到100之间的10个数.. 3.利用ArrayList类创建一个对象,并向其添加若干个学生信息(包括但不限于学号 ...
- Java基础编写猜数游戏
Java基础编写猜数游戏 设计内容及要求 产生一个100以内的随机数,游戏者进行猜数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜对为止.游戏结束后计算出玩家所猜的次数. 目的及意义 通过猜数 ...
- 【Java】Java基础飞机大战小游戏完整代码
Java基础飞机大战小游戏完整代码 先来展示一下代码实现结果图 主函数ShootGame 初始化游戏原始背景图片,游戏人物图片,游戏开始结束图片:构建产生敌人算法:产生英雄机算法:发射子弹算法:判断是 ...
- 【图解算法面试】记一次面试:说说游戏中的敏感词过滤是如何实现的?
版权声明:本文为苦逼的码农原创.未经同意禁止任何形式转载,特别是那些复制粘贴到别的平台的,否则,必定追究.欢迎大家多多转发,谢谢. 小秋今天去面试了,面试官问了一个与敏感词过滤算法相关的问题,然而小秋 ...
最新文章
- LAMP环境搭建与测试
- 动态规划 dp05 插入乘号问题 c代码
- javascript --执行上下文,作用域
- Onvif学习总结(转载)
- mysql二进制安装的优缺点_MYSQL的二进制安装
- 文本文件加密和解密_解密文本见解和相关业务用例
- linux增量安装tomcat_linux与windows下tomcat的java内存设置
- 小程序WXML基本使用
- ubuntu 安装 php
- restful解决什么问题_当您陷入RESTful,WordPress和一个困难的地方时,如何解决CMS问题...
- android Sqlite小记
- 2017.10.9 DZY Loves Math V 失败总结
- fedora 20 报错: Loaded plugins: langpacks, refresh-packagekit Error: Cannot retrieve metalink for...
- 【BZOJ3294】放棋子(动态规划,容斥,组合数学)
- VB.NET与 sql数据库
- CPU负载均衡之cpufreq使用
- 云端软件平台 如何共享自己封装的云端软件
- ActivityGroup详解
- 大数据平台建设方案(项目需求与技术方案)
- Chrome扩展开发总结之浏览器书签获取