| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1681 人关注过本帖
标题:关于井字棋的代码,小弟有个地方实在看不懂
只看楼主 加入收藏
柏拉图的理想
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-11-20
结帖率:100%
收藏
 问题点数:0 回复次数:1 
关于井字棋的代码,小弟有个地方实在看不懂
程序代码:
package 数组;

import java.util.Scanner;

public class 井字棋 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner in=new Scanner(System.in);
        int SIZE=3;
        int[][] board=new int[SIZE][SIZE];
        int numX=0;
        int numO=0;
        boolean getRESULT=false;
        int result=0;
        for(int i=0;i<board.length;i++)
        {
            for(int j=0;j<board[i].length;j++)
            {
                board[i][j]=in.nextInt();
            }
        }
        //检查行
        for(int i=0;i<board.length;i++)
        {
            for(int j=0;j<board[i].length;j++)
            {
                if(board[i][j]==1)
                {
                    numX++;
                }
                else
                {
                    numO++;
                }
                if(numX==SIZE || numO==SIZE)
                {
                    getRESULT=true;
                    if(numX==SIZE)
                    {
                        result=1;
                    }
                    else
                    {
                        result=2;
                    }
                }
            }
            numX=0;
            numO=0;
        }
        //检查列
        if(!getRESULT)
        {
            numX=0;
            numO=0;
            for(int i=0;i<board.length;i++)
            {
                for(int j=0;j<board[i].length;j++)
                {
                    if(board[j][i]==1)
                    {
                        numX++;
                    }
                    else
                    {
                        numO++;
                    }
                    if(numX==SIZE || numO==SIZE)
                    {
                        getRESULT=true;
                        if(numX==SIZE)
                        {
                            result=1;
                        }
                        else
                        {
                            result=2;
                        }
                    }
                }
                numX=0;
                numO=0;
            }
        }
        //判断正对角线
        if(!getRESULT)
        {
            numX=0;
            numO=0;
            for(int i=0;i<board.length;i++)
            {
                if(board[i][i]==1)
                {
                    numX++;
                }
                else
                {
                    numO++;
                }
                if(numX==SIZE || numO==SIZE)
                {
                    getRESULT=true;
                    if(numX==SIZE)
                    {
                        result=1;
                    }
                    else
                    {
                        result=2;
                    }
                }
            }
        }
        //判断反对角线
        if(!getRESULT)
        {
            numX=0;
            numO=0;
            for(int i=0;i<board.length;i++)
            {
                if(board[i][SIZE-i-1]==1)
                {
                    numX++;
                }
                else
                {
                    numO++;
                }
                if(numX==SIZE || numO==SIZE)
                {
                    getRESULT=true;
                    if(numX==SIZE)
                    {
                        result=1;
                    }
                    else
                    {
                        result=2;
                    }
                }
            }
        }
        //出结果
        switch(result)
        {
        case 1:
            System.out.print("X方胜");
            break;
        case 2:
            System.out.print("O方胜");
            break;
        default:
            System.out.print("平局");
        }
        in.close();
    
    }
        

    }

其中这里的getRESULT到底是起到什么作用,还有那个分if(!getRESULT)在运行的过程中又是什么意思,我现在完全被这两个地方给搞蒙了
2016-05-20 16:16
current
Rank: 1
等 级:新手上路
威 望:1
帖 子:15
专家分:5
注 册:2016-5-31
收藏
得分:0 
这要看getResult方法具体是干嘛才知道阿
2016-05-31 11:26
快速回复:关于井字棋的代码,小弟有个地方实在看不懂
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015785 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved