小猫钓鱼java代码,【Java个人笔记】练习-小猫钓鱼
尚未完成
猫类
package 小猫钓鱼;
import java.util.Random;
public class Cat {
private String name;
private int[] card = new int[100];
private int cardnumber = 0;
public Cat(String name, int cardnumber) {
this.name = name;
this.cardnumber = cardnumber;
Random rand = new Random();
for (int i = 0; i < cardnumber; i++) {
this.card[i] = rand.nextInt(9);
}
}
// 打印所有牌
public void show() {
System.out.println(this.name + "的牌是:");
for (int i = 0; i < this.cardnumber; i++) {
System.out.println(this.card[i] + " ");
}
}
// 依次打出手中的牌
public int outcard() {
int temporary = card[0];
for (int i = 0; i < (this.cardnumber - 1); i++) {
card[i] = card[i + 1];
}
this.cardnumber -= 1;
System.out.println(this.name + "打出" + temporary);
return temporary;
}
// 接收桌面上的牌
public void getcard(int[] desktop) {
System.out.println(this.name + "获得桌面上所有牌");
int i = desktop.length;
while ((i - 1) >= 0) {
this.card[cardnumber] = desktop[i - 1];
i--;
cardnumber++;
}
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// 目前手牌数
public int getCardnumber() {
return cardnumber;
}
public void setCardnumber(int cardnumber) {
this.cardnumber = cardnumber;
}
// 单元测试
// public static void main(String[] args) {
// Cat cat1 = new Cat("咖啡猫", 5);
//
// cat1.show();
// System.out.println(cat1.outcard());
// cat1.show();
// int[] a = new int[5];
// for (int i = 0; i < 5; i++)
// a[i] = i + 1;
// cat1.getcard(a);
// cat1.show();
// System.out.println(cat1.getCardnumber());
// for (int i = 0; i < 5; i++)
// System.out.println(a[i]);
//
// }
}
桌面类
package 小猫钓鱼;
import java.util.ArrayList;
public class Table {
ArrayList tablecard=new ArrayList();
// 获得猫打出的牌
public void getcard(int card) {
tablecard.add(Integer.valueOf(card));
}
// 返回所有牌
public int[] outcard() {
tablecard.trimToSize();
int i=tablecard.size();
int[] a=new int[i];
for(;i>0;i--) {
Integer tem=tablecard.get(i-1);
a[i-1]= tem.intValue();
}
return a;
}
//
public void clean() {
tablecard.clear();
}
}
主程序类
package 小猫钓鱼;
public class Game {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Cat cat1 = new Cat("咖啡猫", 5);
Cat cat2 = new Cat("汤姆", 5);
Table table = new Table();
int b = 10;
int time = 0;
cat1.show();
cat2.show();
while (cat1.getCardnumber() != 0 || cat2.getCardnumber() != 0) {
int a = cat1.outcard();
table.getcard(a);
if (a == b) {
cat1.getcard(table.outcard());
table.clean();
cat1.show();
cat2.show();
}
b = cat2.outcard();
table.getcard(b);
if (a == b) {
cat2.getcard(table.outcard());
table.clean();
cat1.show();
cat2.show();
}
time++;
}
if (cat1.getCardnumber() == 0)
System.out.println(cat2.getName() + "获得最终胜利,共进行了" + time + "轮比赛");
else
System.out.println(cat1.getName() + "获得最终胜利,共进行了" + time + "轮比赛");
}
}
待更新
小猫钓鱼java代码,【Java个人笔记】练习-小猫钓鱼相关推荐
- java调用子系统代码_深入理解JAVA虚拟机-Idea远程执行本地Java代码 - Java 技术驿站-Java 技术驿站...
今天在看深入理解JAVA虚拟机的9.3节,作者实现了一个远程执行功能.这个功能可以在远程服务器中临时执行一段程序代码,而去不依赖jdk版本,不改变原有服务端程序的部署,不依赖任何第三方库,不入侵原有的 ...
- 设计一个聊天窗口java代码,Java 设计的聊天程序-完整代码
[实例简介] 这是一个Java 课程设计,模仿MSN.QQ等的界面.压缩包内有源码跟使用方法! [实例截图] [核心代码] Java设计的聊天程序-完整源码 └── Java 设计的聊天程序-完整源码 ...
- java存档_存档 Java 代码 - Java 入门教程
目标 了解如何在 Eclipse 中创建 JAR 文件 能够将第三方代码导入您的 Java 应用程序 创建 JAR 现在您已经了解了如何编写 Java 应用程序,您可能想知道如何打包它们,以便其他开发 ...
- 超大数相乘的java代码,java版大数相乘
在搞ACM的时候遇到大数相乘的问题,在网上找了一下,看到了一个c++版本的 用java搞了一个版本 这里说一下思路 将数字已字符串形式接收,转换成int[]整型数组,然后num1[],num2[]依次 ...
- 圣诞快乐java代码,java版的下雪,大家圣诞快乐
everybody, Merry Christmas ! 里面有播放音乐,太大了上传不了,想看效果的把播放音乐的代码注释掉就好了. 不好意思,图片忘记了,现补上了,不过图片是网上随便找的图扣的,不是很 ...
- 最简判断闰年java代码,java判断闰年代码
java判断闰年代码 java教程网[简单的一道题--用if-else 语句判断某年份是否为闰年]代码如下: package com.wenzhi;O网页链接 Python 代码:(java类似,算法 ...
- 智能商贸java代码实现——学习笔记day02
结构图 Pepository层 自定义一个Repository, 它是JpaRepository的功能基础上继承增强 自定义接口 如自定义接口 BaseRepository 继承JpaReposito ...
- hello world的Java代码,Java语言实现hello world代码
参考https://blog.csdn.net/yilovexing/article/details/53256713 24种编程语言的Hello World程序 Java 文档注释 Java 支持三 ...
- md5视频加密 java代码,Java实现MD5加密及解密的代码实例分享
基础:MessageDigest类的使用 其实要在Java中完成MD5加密,MessageDigest类大部分都帮你实现好了,几行代码足矣: /** * 对字符串md5加密 * * @param st ...
- PHP能不能让一串代码现实,一段让你认清现实的Java代码.java
/** * 答致命三问 * 终回归现实 */ public static void main(String[] args) { boolean a = false, b = false, c = fa ...
最新文章
- DSP与CEVA芯片
- 2017-2018-2 『网络对抗技术』Exp1:PC平台逆向破解 20165335
- 开发75条(写的不错) 选择自 churujianghu 的 Blog
- oppo计算机的夜间模式,oppo夜间模式如何打开
- HDU 4923 Room and Moor(瞎搞题)
- 学习ROS过程中遇到的一些小问题以及解决办法的记录
- 从“做什么”到“怎么做”,说说一只蚊子
- matlab状态转空间,matlab - 如何在Matlab中使用状态空间模型避免tf()命令 - 堆栈内存溢出...
- astar算法c语言实,Astar寻路算法C++实现
- 模拟多线程给多用户发送短信
- android 过滤蓝光软件下载,安卓蓝光过滤器
- 微信公众号和服务器的关系,微信公众号订阅号和服务号主要区别
- 消息队列返回错误:Resource temporarily unavailable
- 复制pdf文字到word
- 年度回顾篇:2018年的亚马逊,众生虽苦,诸恶莫作
- 前端唤起QQ和加群功能
- android系统 vender添加自定义的预编译的应用程序
- AtCoder Beginner Contest 171 D Replacing 桶排序+及时更新数据
- 硬盘活动分区(将磁盘分区标为活动或取消活动的方法)(转)
- Centos搭建服务