Java基础练习题7--猜拳游戏,模拟双色球功能,统计词语次数,判断大写字母,敏感词过滤程序
Posted 小智RE0
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础练习题7--猜拳游戏,模拟双色球功能,统计词语次数,判断大写字母,敏感词过滤程序相关的知识,希望对你有一定的参考价值。
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());//121
int a1=s.indexOf(p,0);
System.out.println("第一次获取的位置:"+a1);//57
System.out.println(s.substring(a1,a1+2));
int a2=s.indexOf(p,a1+2);
System.out.println("第二次获取的位置:"+a2);//89
System.out.println(s.substring(a2,a2+2));
int a3=s.indexOf(p,a2+2);
System.out.println("第三次获取的位置:"+a3);//99
System.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--猜拳游戏,模拟双色球功能,统计词语次数,判断大写字母,敏感词过滤程序的主要内容,如果未能解决你的问题,请参考以下文章