知识大全 Java中的“五子棋”游戏程序
Posted 结束
篇首语:今日长缨在手,何时缚住苍龙。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java中的“五子棋”游戏程序相关的知识,希望对你有一定的参考价值。
Java中的“五子棋”游戏程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
import java util Scanner;
public class FiveChessGame
private int temp;
private String[][] String ;//注意在这里不能定义为char型不然打印的数字
////////////////////////////
public FiveChessGame()
System out println( please input the line number );
Scanner sc=new Scanner(System in);
this temp=sc nextInt();
String =new String[temp][temp];
for(int i= ;i<temp;i++)
for(int j= ;j<temp;j++)
String [i][j]= * ;//注意在这里不能定义为char型不然打印的数字
System out print( \\t );
for(int i= ;i<temp;i++)
System out print(i);
System out print( \\t );
System out println();
for(int i= ;i<temp;i++)
System out print(i);//注意在这里的格式不能写成System out print(i+ \\t );不然从 打印
System out print( \\t );
for(int j= ;j<temp;j++)
System out print(String [i][j]+ \\t );
System out println();
////////////////////
public int getline()
return this temp;
///////////////////////
public String[][] getString()
return this String ;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
import java util *;
public class FiveChessPlayers
private String name;
public static FiveChessGame fcg=new FiveChessGame();
//////////////////////
public FiveChessPlayers()//玩多少行的游戏
System out println( please input player s name );
Scanner sc=new Scanner(System in);
this name=sc next();
///////////////////
public String getName()
return this name;
////////////////////////////////
public void play(String str )//the player could play the chess
Scanner sc=new Scanner(System in);
int x y;
while(true)
System out println( please input your chess );
x=sc nextInt();
y=sc nextInt();
if(x>=fcg getline()||y>=fcg getline())
System out println( your input is error );
continue;
if(fcg getString()[x][y]== * )
fcg getString()[x][y]=str ;
break;
else
System out println( you coudl n put your chess here );
continue;
////////////////////////////////////////////////////////////////////////////////////////////////
import java util *;
public class TestChess
private FiveChessPlayers f ;
private FiveChessPlayers f ;
public TestChess()
f =new FiveChessPlayers();
f =new FiveChessPlayers();
///////////////////////////////////////////////////////////////////////////
public void display()
System out print( \\t );
for(int i= ;i<FiveChessPlayers fcg getline();i++)
System out print(i);
System out print( \\t );
System out println();
for(int i= ;i<FiveChessPlayers fcg getline();i++)
System out print(i);//注意在这里的格式不能写成System out print(i+ \\t );不然从 打印
System out print( \\t );
for(int j= ;j<FiveChessPlayers fcg getline();j++)
System out print(FiveChessPlayers fcg getString()[i][j]+ \\t );
System out println();
//////////////////////////////////////////////////////////////////////////////
public void putChess(String tem )
if(tem equals( @ ))
f play( @ );
if(tem equals( # ))
f play( # );
/////////////////////////////////////////////////////////
public void victory()
String str =new String();
String str = @@@@@ ;
////////////////////////////////////
int X= Y= ;//用来记录每次查找到的 @ 字符的数组下标 从两个for循环里导出来
int k= ;int j= ;//注意首次的控制条件的建立 j为- 可以使第二个for检测首次从下标 开始
///////////////////////////////////
while(true)
LABEL:for(;k<FiveChessPlayers fcg getline();k++)//添加标签 要注意标签的用法
for(j=(j+ )%FiveChessPlayers fcg getline();j<FiveChessPlayers fcg getline();j++)
//注意在这里的这个表达式的写法 可以在一次寻找不满足时下一次从数组的下一个位置开始
if(FiveChessPlayers fcg getString()[k][j] equals( @ ))
X=k;
Y=j;
break LABEL;//每找到一个相同字符则跳出
else
System out println(k+ 行 );
System out println(j+ 列 );
// continue;//多余
// System exit( );//调试语句 退出虚拟机
if(k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())
for(int i= ;i< ;i++)
if(X<FiveChessPlayers fcg getline()&Y<(FiveChessPlayers fcg getline() ))//遍历列
str +=FiveChessPlayers fcg getString()[X][Y+i];
if(i!= )
continue;
if(i== )
System out println( 安列取 +str );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//结束退出虚拟机
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&(Y+ )<FiveChessPlayers fcg getline())//四十五度遍历
str +=FiveChessPlayers fcg getString()[X+i][Y+i];
if(i!= )
continue;
if(i== )
System out println( 四十五度向前取 +str );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//胜利结束游戏
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&Y<FiveChessPlayers fcg getline())//行遍历
str +=FiveChessPlayers fcg getString()[X+i][Y];
if(i!= )
continue;
if(i== )
System out println( 安行取 +str );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//如上
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&(Y )>= )
str +=FiveChessPlayers fcg getString()[X+i][Y i];
if(i!= )
continue;
if(i== )
System out println( 四十五度向后取 +str );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//如上
else
str = ;
// str +=f String [X+i][Y+i];//注意对比写法
// continue;
// str = +f String [X+i][Y+i];//注意错误的写法 不然每次覆蓋前一次的串累加值
// continue;
//////////////////////////////////////////////////////////////////////////////
if(str == &k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())
j++;
continue ;
else
break;
////////////////////////////////////////////////////////////////////
public void victory ()
String str =new String();
String str = ##### ;
////////////////////////////////////
int X= Y= ;
int k= ;int j= ;
while(true)
LABEL:for(;k<FiveChessPlayers fcg getline();k++)//添加标签 要注意标签的用法
for(j=(j+ )%FiveChessPlayers fcg getline();j<FiveChessPlayers fcg getline();j++)
if(FiveChessPlayers fcg getString()[k][j] equals( # ))
X=k;
Y=j; System out println(FiveChessPlayers fcg getString()[k][j]);
break LABEL;
else
System out println(k+ ****** );
System out println(j);
///////////////////////////////////////////////
for(int i= ;i< ;i++)
if(X<FiveChessPlayers fcg getline()&Y<(FiveChessPlayers fcg getline() ))//遍历列
str +=FiveChessPlayers fcg getString()[X][Y+i];
if(i!= )
continue;
if(i== )
System out println(str );
System out println( );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//结束
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&(Y+ )<FiveChessPlayers fcg getline())//四十五度遍历
str +=FiveChessPlayers fcg getString()[X+i][Y+i];
if(i!= )
continue;
if(i== )
System out println(str );
System out println( );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//结束
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&Y<FiveChessPlayers fcg getline())//行遍历
str +=FiveChessPlayers fcg getString()[X+i][Y];
if(i!= )
continue;
if(i== )
System out println(str );
System out println( );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//结束
else
str = ;
for(int i= ;i< ;i++)
if((X+ )<FiveChessPlayers fcg getline()&(Y )>= )
str +=FiveChessPlayers fcg getString()[X+i][Y i];
if(i!= )
continue;
if(i== )
System out println(str );
System out println( );
if(str equals(str ))
System out println(f getName()+ is the winner );
System exit( );//结束
else
str = ;
// str +=f String [X+i][Y+i];
// continue;
// str = +f String [X+i][Y+i];//注意错误的写法 不然每次覆蓋前一次的串累加值
// continue;
//////////////////////////////////////////////////////////////////////////////
if(str == &k<FiveChessPlayers fcg getline()&j<FiveChessPlayers fcg getline())
j++;
continue ;
else
break;
////////////////////////////////////////
public static void main(String[] args)
TestChess tc=new TestChess();
boolean b =true;
while(b )
tc putChess( @ );
tc victory();
tc display();
tc putChess( # );
tc display();
tc victory ();
Scanner sc=new Scanner(System in);
System out println( if you like to continue input true or exit input false );
b =sc nextBoolean();
if(!b )
System out println( wele to use ! );
break;
cha138/Article/program/Java/hx/201311/25560
相关参考
Java中的同步——示例程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 前面说到了Java中
Java程序中的多线程 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一为什么会排队等待? 下
Java程序中的多线程(四) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作者NeelVKum
Java程序中的多线程(二) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作者NeelVKum
Java程序中的多线程(一) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 作者NeelVKum
谈谈各种JAVA中的调用程序方式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 很多书籍都说Ja
Java数据库程序中的存储过程设计 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文阐述了怎么
Java应用程序中的按值传递语义 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 几个月前deve
用内嵌类减少JAVA程序设计中的混乱 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 实体bean
多线程在JAVAME应用程序中的使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 多线程技术是