Java基础 文字小游戏
souf
System.out.printf("你好啊%s","张三")
输出你好啊张三
System.out.printn()放在中间可以换行
System.out.printf("%s你好啊%s","张三","李四")
输出 张三你好啊李四
只有输出没有换行效果。
制作一个文字小游戏
创建一个文件夹
Javalianxi/src/com/zhizuo/text1
创建两个Java文件
Role.java
package com.wenzi.text1;import java.util.Random;public class Role {private String name;private int blood;private char gender;private String face;//长相是随机的String[] boyfaces = {"风流倜傥", "气宇轩昂", "样貌英俊", "五官端正", "相貌平平", "一塌糊涂", "面部狰狞", "凶神恶煞"};String[] girfaces = {"美轮绝换", "沉鱼落雁", "亭亭玉立", "身材姣好", "相貌平平", "一塌糊涂", "面部狰狞", "凶神恶煞"};//attack 攻击描述String[] attacks_desc = {"%s使出了一招【背心钉】,转到了对方的身后,一掌向%s背心的灵台穴拍去","%s使出了一招【向龙有悔】,打出降龙十八掌的第十八掌,直击%s的胸膛","%s大喊一声,身形下伏,一招【霹雷坠地】,锤向%s的双腿","%s运气于掌,亦身兼掌心变得血红,一式【掌心雷】,推向%s","%s上部抢身,招中套招,一招【连环巴掌】,抽的%s愤怒无比"};String[] injureds_desc = {"结果%s退了半步,毫发无伤","结果给%s造成了一处瘀伤","结果一击命中,%s痛的弯下了腰","结果%s痛苦的冷哼一声,显然是受了内伤","结果【轰】的一声,%s狂吐鲜血","结果%s一声惨叫,像软泥一般瘫了下去"};public Role() {}public Role(String name, int blood, char gender) {this.name = name;this.blood = blood;this.gender = gender;setFace(gender);}public char getGender() {return gender;}public void setGender(char gender) {this.gender = gender;}public String getFace() {return face;}public void setFace(char gender) {Random r = new Random();//长相是随机的if (gender == '男') {//从boyface里面选择容貌int index = r.nextInt(boyfaces.length);this.face = boyfaces[index];} else if (gender == '女') {//从girface里面选择容貌int index = r.nextInt(girfaces.length);this.face = girfaces[index];} else {this.face = "面目狰狞";}this.face = face;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getBlood() {return blood;}public void setBlood(int blood) {this.blood = blood;}@Overridepublic String toString() {return "Role{" +"name='" + name + '\'' +", blood=" + blood +'}';}//定义一个方法用于攻击被人//思考谁攻击谁//Role r1 = new Role();//Role r2 = new Role();//r1.攻击r2//方法的调用者攻击参数public void attack(Role role) {Random r =new Random();int index = r.nextInt(attacks_desc.length);String KongFu = attacks_desc[index];//输出一个攻击的效果System.out.printf(KongFu,this.getName(),role.getName());System.out.println();//计算造成的上海1~20int hurt = r.nextInt(20) + 1;//修改一下挨揍人的血量//剩余血量int remainBoold = role.getBlood() - hurt;//对剩余血量做一个验证,如果为负数了,就修改为0remainBoold = remainBoold < 0 ? 0 : remainBoold;//修改血量role.setBlood(remainBoold);//受伤的描述//血量>90 0索引的描述//血量80~90 1索引描述if(remainBoold > 90 ){System.out.printf(injureds_desc[0], role.getName());}else if (remainBoold > 80){System.out.printf(injureds_desc[1], role.getName());}else if (remainBoold > 60){System.out.printf(injureds_desc[2], role.getName());}else if (remainBoold > 30){System.out.printf(injureds_desc[3], role.getName());}else if (remainBoold > 0){System.out.printf(injureds_desc[4], role.getName());}else {System.out.printf(injureds_desc[5], role.getName());}System.out.println();}public void showRoleInfo() {System.out.println("姓名为:" + getName());System.out.println("血量为:" + getBlood());System.out.println("性别为:" + getGender());System.out.println("长相为:" + getFace());}
}
GameTest.java
package com.wenzi.text1;public class GameTest {public static void main(String [] args) {//创建第一个角色Role r1 = new Role("乔峰", 100,'男');//创建第二个角色Role r2 = new Role("东方不败", 100,'女');//展示角色的信息r1.showRoleInfo();r2.showRoleInfo();//战斗开始回合while (true){r1.attack(r2);//判断r2的血量if (r2.getBlood() == 0) {System.out.println(r1.getName() + "ko了" + r2.getName());break;}//r2攻击r1r2.attack(r1);if (r1.getBlood() == 0) {System.out.println(r2.getName() + "ko了" + r1.getName());break;}}}
}
这里的Java基础主要是考察的get和set方法的使用,其中的souf可以进行名字的传入,让这个看起来更加的生动
运行结果

相关文章:
Java基础 文字小游戏
souf System.out.printf("你好啊%s","张三") 输出你好啊张三 System.out.printn()放在中间可以换行 System.out.printf("%s你好啊%s","张三","李四") 输出 张三你好啊李四 只有输出没有换行效果。 制作一个文字小游戏…...
「数组」归并排序 / if语句优化|小区间插入优化(C++)
概述 在上一篇文章中,我们介绍了快速排序以及随机快速排序: 「数组」快速排序 / 随机值优化|小区间插入优化(C) 今天,我们来介绍归并排序。 相比于快速排序是冒泡排序融合了分治思想后形成的究极promax进化版&…...
颠覆传统 北大新型MoM架构挑战Transformer模型,显著提升计算效率
挑战传统的Transformer模型设计 在深度学习和自然语言处理领域,Transformer模型已经成为一种标准的架构,广泛应用于各种任务中。传统的Transformer模型依赖于一个固定的、按深度排序的层次结构,每一层的输出都作为下一层的输入。这种设计虽然…...
接口优化笔记
索引 添加索引 where条件的关键自动或者order by后面的排序字段可以添加索引加速查询 索引只能通过删除新增进行修改,无法直接修改。 # 查看表的索引 show index from table_name; show create table table_name; # 添加索引 alter table table_name add index …...
pandas 科学计数法显示
我注意到pandas中有一个问题, 默认情况下,就是其中的数据的小数位不能超过6位,比如0.0000007就会被显示为0,这个结果如下 全部以科学技术显示 import pandas as pd import numpy as np# 设置显示格式为科学计数法 pd.options.d…...
PHP正则替换字符串中的图片地址
在PHP中,可以使用preg_replace()函数来实现正则表达式的替换功能。以下是一个简单的例子,演示如何替换字符串中的图片地址。 double $str 图片地址1:<img src"http://example.com/image1.jpg"> 图片地址2:<i…...
基于多商户AI智能名片商城小程序的粉丝忠诚度提升策略:深度融合足额法则与多维度激励体系
摘要:在数字化浪潮的推动下,多商户AI智能名片商城小程序以其独特的商业模式和技术优势,正逐步成为连接商家与消费者,特别是粉丝群体的重要平台。本文深入探讨了如何通过深度融合足额法则与多维度激励体系,有效提升多商…...
BigDecimal高精度运算
1. BigDecimal是什么类型,为什么可以转为double BigDecimal 是 Java 中用于表示任意精度的十进制数的类。它主要用于金融和商业计算,能够提供比 double 类型更高精度的运算,特别是在处理货币等需要精确计算的场景中。 1.1 BigDecimal 的基…...
C/C++实现蓝屏2.0
🚀欢迎互三👉:程序猿方梓燚 💎💎 🚀关注博主,后期持续更新系列文章 🚀如果有错误感谢请大家批评指出,及时修改 🚀感谢大家点赞👍收藏⭐评论✍ 前…...
Unity音频管理器插件AudioToolKit
Unity音频管理器插件AudioToolKit 介绍AudioToolKit介绍具体用法总结 介绍 最近在自己写音频管理器的时候在网上发现了一款比较好用并且功能很全的一个音频管理插件,叫做AudioToolKit的插件。 如果需要的可以直接从我资源中找AudioToolKit。 AudioToolKit介绍 A…...
搜维尔科技:驾驶模拟器背后的技术: Varjo的虚拟/混合现实 (VR/XR)提供独特的优势,最终加快汽车开发创新的步伐
专业驾驶模拟器广泛应用于车辆开发,帮助汽车行业在开发过程的早期做出更好的设计决策。总体目标是为测试驾驶员提供最真实的驾驶体验,包括动态动作和声音,并测试控制算法或辅助系统等功能。环境越真实,驾驶员的体验就越接近最终车…...
OSL 冠名赞助Web3峰会 “FORESIGHT2024”圆满收官
OSL 望为香港数字资产市场发展建设添砖加瓦 (香港,2024 年 8 月 13 日)- 8 月 11 日至 12 日, 由 香港唯一专注数字资产的上市公司 OSL 集团(863.HK)冠名赞助,Foresight News、 Foresight Ventu…...
LeetCode 3148.矩阵中的最大得分:每个元素与其左或上元素之差的最大值(原地修改O(1)空间)
【LetMeFly】3148.矩阵中的最大得分:每个元素与其左或上元素之差的最大值(原地修改O(1)空间) 力扣题目链接:https://leetcode.cn/problems/maximum-difference-score-in-a-grid/ 给你一个由 正整数 组成、大小为 m x n 的矩阵 g…...
主流的开源大型语言模型
本期我们来聊聊目前主流的开源大型语言模型。这些模型就像是AI界的超级英雄,各具特色,为我们的研究和开发提供了强大的力量。🚀 GPT-Neo:这是EleutherAI的杰作,它模仿了OpenAI的GPT-3。GPT-Neo虽然规模小一些…...
【自动驾驶】话题通信
目录 构建发布者构建订阅者编写lanch文件自动启动节点测试运行ROS的目录结构 切换到工作空间的src目录下: 构建发布者 catkin_create_pkg publisher std_msgs rospy roscpp编写发布者程序: // 1.包含头文件 #include "ros/ros.h" #include &…...
【Linux】中的软件安装:深入探索RPM、SRPM与YUM
🐇明明跟你说过:个人主页 🏅个人专栏:《Linux :从菜鸟到飞鸟的逆袭》🏅 🔖行路有良友,便是天堂🔖 目录 一、引言 1、Linux的起源与发展 2、RPM、SRPM与YUM的简要介…...
uniapp自定义请求头信息header
添加请求头:uniapp自定义请求头信息header,如下:添加tenant-id参数 代码...
SpringBoot整合Liquibase
1、是什么? Liquibase官网 Liquibase是一个开源的数据库管理工具,可以帮助开发人员管理和跟踪数据库变更。它可以与各种关系型数据库和NoSQL数据库一起使用,并提供多种数据库任务自动化功能,例如数据库迁移、版本控制和监控。Li…...
虚幻5|给武器添加碰撞检测与伤害
本章内容衔接上两章,需要完成上两章才能用本章内容 虚幻5|角色武器装备的数据库学习(不只是用来装备武器,甚至是角色切换也很可能用到)-CSDN博客虚幻5|普通攻击,使用接口更方便-CSDN博客 如有疑问,可访问…...
RESTful API设计指南:构建高效、可扩展的Web服务
目录 引言 一.RESTful API概述 二.设计原则 2.1. 资源导向 2.2. 使用标准的HTTP方法 2.3. 无状态通信 2.4. 可缓存响应 2.5. 分层系统 2.6. 按需加载代码(可选) 2.7. HATEOAS 三.最佳实践 3.1. 明确资源和子资源 3.2. 使用合适的HTTP状态码 …...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
爬虫基础学习day2
# 爬虫设计领域 工商:企查查、天眼查短视频:抖音、快手、西瓜 ---> 飞瓜电商:京东、淘宝、聚美优品、亚马逊 ---> 分析店铺经营决策标题、排名航空:抓取所有航空公司价格 ---> 去哪儿自媒体:采集自媒体数据进…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
