我感觉我恰似一个呆逼

  TicTacToe V2.0。

  非要用1-9来输入的结果就是使用二维数组这件事的意义变得非常难找。

  留个遗体,我要改回坐标输入了。

 1 public class Game {
 2     String chessBoard;
 3     String[][] pieces = new String[3][3];
 4     
 5     /** 初始化棋盘样式和棋子数组。*/
 6     Game() {
 7         chessBoard = 
 8                 "--------------   \n" +
 9                 "| %s | %s | %s | \n" +
10                 "--------------   \n" +
11                 "| %s | %s | %s | \n" +
12                 "--------------   \n" +
13                 "| %s | %s | %s | \n" +
14                 "--------------   \n";
15         
16         for (int i = 1, j = 0; j < 3; i++, j++)
17             pieces[0][j] = String.valueOf(i);
18         for (int i = 4, j = 0; j < 3; i++, j++)
19             pieces[1][j] = String.valueOf(i);
20         for (int i = 7, j = 0; j < 3; i++, j++)
21             pieces[2][j] = String.valueOf(i);
22     }
23     
24     /** 棋子数组降维。*/
25     String[] pieceList() {
26         String[] temp = new String[9];
27         
28         System.arraycopy(pieces[0], 0, temp, 0, 3);
29         System.arraycopy(pieces[1], 0, temp, 3, 3);
30         System.arraycopy(pieces[2], 0, temp, 6, 3);
31         
32         //for (int i = 0, j = 0; i < 3; i++, j += 3)
33                 //    System.arraycopy(pieces[i], 0, temp, j, 3);
34         
35         return temp;
36     }
37     
38     /** 列表到棋子数组的反映射。*/
39     int[] map(int i) {
40         int[] result = new int[2];
41         for 
42     }
43     
44     /** 打印棋盘。*/
45     void printChessBoard() {
46         System.out.printf(this.chessBoard, (Object[])this.pieceList());
47     }
48 }
Player类也得改

转载于:https://www.cnblogs.com/chihane/p/3448378.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/273925.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[企业化NET]Window Server 2008 R2[3]-SVN 服务端 和 客户端 基本使用

1. 服务器基本安装即问题解决记录 √ 2. SVN环境搭建和客户端使用 2.1 服务端 和 客户端 安装 √ 2.2 项目建立与基本使用 √ 2.3 基本冲突解决,并版&#xff0c;tags 3. 数据库安装 4. 邮件服务器搭建 5. JIRA环境搭建和使用 6. CC.NET项目持续发布工具…

关于 mysql.test 数据库

国内私募机构九鼎控股打造APP&#xff0c;来就送 20元现金领取地址&#xff1a;http://jdb.jiudingcapital.com/phone.html内部邀请码&#xff1a;C8E245J &#xff08;不写邀请码&#xff0c;没有现金送&#xff09;国内私募机构九鼎控股打造&#xff0c;九鼎投资是在全国股份…

Python中strip()、lstrip()、rstrip()用法详解

Python中strip()、lstrip()、rstrip()用法详解 Python中有三个去除头尾字符、空白符的函数&#xff0c;它们依次为: strip&#xff1a; 用来去除头尾字符、空白符(包括\n、\r、\t、 &#xff0c;即&#xff1a;换行、回车、制表符、空格) lstrip&#xff1a;用来去除开头字符、…

HDU 4121 Xiangqi 模拟题

题目&#xff1a; http://acm.hdu.edu.cn/showproblem.php?pid4121 首先对标题赞一个&#xff0c;非要叫 “Xiangqi” 而不是 ”中国象棋“ 或者 ”Chinese chess“ 。。 然后是题意&#xff1a;黑棋只剩下一个”将“了&#xff0c;红棋各种 ”车” “马” “炮“&#xff0c;…

Python3的方法解析顺序(MRO)

Python 2.3 的新式类的 C3 算法。它也是 Python 3 唯一支持的方式(笔者使用python3&#xff0c;所以就先讲这种的) 一个例子&#xff1a; class D(object): pass class E(object): pass class F(object): pass class C(D, F): pass class B(E, D): …

WPF 用 DataTemplate 合并DataGrid列表列头类似报表设计及行头列头样式 - 学习

WPF中 DataGrid 列头合并&#xff0c;类似于报表设计。效果图如下↓ 1.新建一个WPF项目WpfApplication1&#xff0c;新建一个窗体DataGridTest&#xff0c;前台代码如下&#xff1a; <Window x:Class"WpfApplication1.DataGridTest" xmlns"http://sch…

他山之石,可以攻玉——来自亚马逊的电商启示录

题记&#xff1a;“创新是我们的DNA&#xff0c;技术是我们改善客户体验的基础2009 年致股东的信” 1. 从亚马逊的成功讲起 1.1 历经8 年亏损始成正果 它是世界上所有电商的龙头和楷模&#xff0c;是毫无争议的行业标杆和旗帜&#xff0c;它在战略和经营上的一举一动都是关注的…

Jar 打包 EXE文件,可以脱离java环境运行 Jsmooth的使用

1、首先准备我们的资源&#xff0c;把要转换的Jar文件、精简过的JRE文件夹和想生成的EXE文件的图标&#xff08;可以是png&#xff0c;jpg等格式&#xff0c;不想加图标可以不弄&#xff09;放到同一个文件夹内。这一步一定要做&#xff0c;否则可以成功生成&#xff0c;但在没…

linux中的fork方法(python)

前言&#xff1a; Unix/Linux操作系统提供了一个fork()系统调用&#xff0c;它非常特殊。普通的函数调用&#xff0c;调用一次&#xff0c;返回一次&#xff0c;但是fork()调用一次&#xff0c;返回两次&#xff0c;因为操作系统自动把当前进程&#xff08;称为父进程&#xf…

进程间通信(python)

Process之间肯定是需要通信的&#xff0c;操作系统提供了很多机制来实现进程间的通信。Python的multiprocessing模块包装了底层的机制&#xff0c;提供了Queue、Pipes等多种方式来交换数据。 一、我们以Queue为例&#xff0c;在父进程中创建两个子进程&#xff0c;一个往Queue…

Ajax 模糊查询的简单实现

类似于百度的搜索引擎模糊查询功能&#xff0c;不过百度的模糊查询功能更强大&#xff0c;这里简单实现下. 要实现模糊查询&#xff0c;首先要做的就是把SQL写好。话不多少&#xff0c;直接贴代码了! JSP页面&#xff1a; <% page language"java" import"jav…

OpenStack组件

OpenStack的架构及组件&#xff08;Havana&#xff09; 服务项目名描述控制台Horizon用户通过该服务与OpenStack的各服务进行交互&#xff0c;如启动虚机实例、分配IP地址、设置访问控制等&#xff1b;计算Nova按需分派并管理虚机&#xff1b;网络Neutron通常是计算服务通过该服…

[转]Design Pattern Interview Questions - Part 2

Interpeter , Iterator , Mediator , Memento and Observer design patterns.(I) what is Interpreter pattern?(B) Can you explain iterator pattern?(A) Can you explain mediator pattern?(I) Can you explain memento pattern?(B) Can you explain observer pattern?…

python爬虫面试题

1 :列表生成式和生成器的区别 &#xff1f; 列表生成式直接生成一个列表&#xff0c;所有元素对象被立即创建在内存中&#xff0c;当元素过多时&#xff0c;势必会占用过多内存&#xff0c; 不可取&#xff0c;要用到生成器&#xff0c;它即时创建一个生成器对象&#xff0c;…

Android ImageView图片自适应

网络上下载下来的图片自适应&#xff1a;android:adjustViewBounds"true"&#xff08;其详细解释在下面&#xff09;<ImageViewandroid:id"id/dynamic_item_image"android:layout_width"wrap_content"android:layout_height"wrap_conten…

都江堰很美-佩服古人_Crmhf的一天

地震遗迹&#xff1a;一条背街&#xff0c;损坏严重&#xff0c;基本没什么人。真正的水利工程&#xff0c;值得每个人学习&#xff1a;转载于:https://www.cnblogs.com/crmhf/p/3823157.html

Spring Data JPA初使用 *****重要********

Spring Data JPA初使用我们都知道Spring是一个非常优秀的JavaEE整合框架&#xff0c;它尽可能的减少我们开发的工作量和难度。在持久层的业务逻辑方面&#xff0c;Spring开源组织又给我们带来了同样优秀的Spring Data JPA。通常我们写持久层&#xff0c;都是先写一个接口&#…

[转帖]好技术领导,差技术领导

团队合作一个优秀的技术领导必然是团队的一份子&#xff0c;他们认为当整个团队成功时自己才称得上成功。他们不仅要做好繁杂和不讨好的本职工作&#xff0c;还要清除项目中的障碍&#xff0c;从而让整个团队能够以100%的效率运转起来。一个好的技术领导会努力拓宽团队在技术上…

C#打开文件对话框和文件夹对话框

打开文件对话框OpenFileDialog OpenFileDialog ofd new OpenFileDialog();ofd.Filter "Excel文件(*.xls;*.xlsx)|*.xls;*.xlsx|所有文件|*.*";ofd.ValidateNames true;ofd.CheckPathExists true;ofd.CheckFileExists true;if (ofd.ShowDialog() DialogResult.O…

ZOJ 2112 Dynamic Rankings

这里是题目地址 其实就是带修改的区间第K大。 写了一下BIT套主席树&#xff0c;内存飞起&#xff0c;似乎需要特别的优化技巧 所以还是写了一下线段树套平衡树&#xff0c;跑了1s左右。 其实线段树套平衡树就是归并树的自然扩展而已。 归并树是把归并排序的过程建成一颗线段树…