最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)三子棋游戲

 更新時間:2022年05月04日 12:45:55   作者:黃佳俊、  
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)三子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了Java實(shí)現(xiàn)三子棋游戲的具體代碼,供大家參考,具體內(nèi)容如下

一、題目要求

編寫程序,實(shí)現(xiàn)簡單的三子棋游戲。在三子棋中,雙方在3×3的棋盤中輪流下棋,一方用*示,另一方用O表示。如果一方的3個棋子占據(jù)了同一行,同一列或者對角線,則該方獲勝。如果棋盤已被棋子占滿,但沒有一方獲勝則出現(xiàn)平局。在程序中,一方為用戶,用戶在界面上輸入每次下棋的位置;另一方下棋的位置為隨機(jī)自動生成。

二、代碼示例

import javax.swing.JOptionPane;
?
public class Main {
?
?? ?public static void main(String[] args) {
?? ??? ?char []s=new char[9];
?? ??? ?for(int i=0;i<9;i++) {
?? ??? ??? ?s[i]=(char)(i+49);
?? ??? ?}
?? ??? ?int i=0;
?? ??? ?while(i++<5) {
?? ??? ??? ?String str=JOptionPane.showInputDialog("------------------\n"
?? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ? + "請輸入位置:");
?? ??? ??? ?while(str.length()==0||(str.charAt(0)-49)<0||(str.charAt(0)-49)>8) {
?? ??? ??? ??? ?str=JOptionPane.showInputDialog("------------------\n"
?? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ? + "輸入錯誤,請重新輸入:");
?? ??? ??? ?}
?? ??? ??? ?char index=str.charAt(0);
?? ??? ??? ?while(s[index-49]=='*'||s[index-49]=='o') {
?? ??? ??? ??? ?str=JOptionPane.showInputDialog("------------------\n"
?? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ? + "此位置已占用,請重新輸入:");
?? ??? ??? ??? ?index=str.charAt(0);
?? ??? ??? ??? ?while(str.length()==0||(str.charAt(0)-49)<0||(str.charAt(0)-49)>8) {
?? ??? ??? ??? ??? ?str=JOptionPane.showInputDialog("------------------\n"
?? ??? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ??? ? + "輸入錯誤,請重新輸入:");
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ?s[index-49]='*';
?? ??? ??? ?if((s[0]=='*'&&s[3]=='*'&&s[6]=='*')||
?? ??? ??? ??? ??? ? ? (s[1]=='*'&&s[4]=='*'&&s[7]=='*')||
?? ??? ??? ??? ??? ? ? (s[2]=='*'&&s[5]=='*'&&s[8]=='*')||
?? ??? ??? ??? ??? ? ? (s[0]=='*'&&s[1]=='*'&&s[2]=='*')||
?? ??? ??? ??? ??? ? ? (s[3]=='*'&&s[4]=='*'&&s[5]=='*')||
?? ??? ??? ??? ??? ? ? (s[6]=='*'&&s[7]=='*'&&s[8]=='*')||
?? ??? ??? ??? ??? ? ? (s[0]=='*'&&s[4]=='*'&&s[8]=='*')||
?? ??? ??? ??? ??? ? ? (s[2]=='*'&&s[4]=='*'&&s[6]=='*'))?
?? ??? ??? ?{
?? ??? ??? ??? ?JOptionPane.showMessageDialog(null, "------------------\n"
?? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ? + "恭喜你贏了");
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?int b=(int)(Math.random()*9);
?? ??? ??? ?while(s[b]=='*'||s[b]=='o')
?? ??? ??? ?{
?? ??? ??? ??? ?b=(int)(Math.random()*9);
?? ??? ??? ?}
?? ??? ??? ?s[b]='o';
?? ??? ??? ?if((s[0]=='o'&&s[3]=='o'&&s[6]=='o')||
?? ??? ??? ??? ??? ? ? (s[1]=='o'&&s[4]=='o'&&s[7]=='o')||
?? ??? ??? ??? ??? ? ? (s[2]=='o'&&s[5]=='o'&&s[8]=='o')||
?? ??? ??? ??? ??? ? ? (s[0]=='o'&&s[1]=='o'&&s[2]=='o')||
?? ??? ??? ??? ??? ? ? (s[3]=='o'&&s[4]=='o'&&s[5]=='o')||
?? ??? ??? ??? ??? ? ? (s[6]=='o'&&s[7]=='o'&&s[8]=='o')||
?? ??? ??? ??? ??? ? ? (s[0]=='o'&&s[4]=='o'&&s[8]=='o')||
?? ??? ??? ??? ??? ? ? (s[2]=='o'&&s[4]=='o'&&s[6]=='o'))?
?? ??? ??? ?{
?? ??? ??? ??? ?JOptionPane.showMessageDialog(null, "------------------\n"
?? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ? + "失敗了,再接再勵");
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?
?? ??? ?}
?? ??? ?if(i==6) {
?? ??? ??? ?JOptionPane.showMessageDialog(null, "------------------\n"
?? ??? ??? ??? ??? ? +"| ?"+s[0]+" ?| ?"+s[1]+" ?| ?"+s[2]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[3]+" ?| ?"+s[4]+" ?| ?"+s[5]+" ?|\n"
?? ??? ??? ??? ??? ? +"| ?"+s[6]+" ?| ?"+s[7]+" ?| ?"+s[8]+" ?|\n"
?? ??? ??? ??? ??? ? +"------------------\n"
?? ??? ??? ??? ??? ? + "平局,還差一點(diǎn)哦");
?? ??? ?}
?? ?}
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java中hashmap容量的初始化實(shí)現(xiàn)

    java中hashmap容量的初始化實(shí)現(xiàn)

    這篇文章主要介紹了java中hashmap容量的初始化實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • 專屬于程序員的浪漫-Java輸出動態(tài)閃圖iloveyou

    專屬于程序員的浪漫-Java輸出動態(tài)閃圖iloveyou

    這篇文章主要介紹了專屬于程序員的浪漫-Java輸出動態(tài)閃圖iloveyou,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • SpringCloud實(shí)現(xiàn)文件上傳功能的方法詳解

    SpringCloud實(shí)現(xiàn)文件上傳功能的方法詳解

    這篇文章主要為大家詳細(xì)介紹了SpringCloud如何實(shí)現(xiàn)文件上傳功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)有一定的借鑒價值,需要的可以參考一下
    2022-08-08
  • 教你怎么用Java回溯算法解數(shù)獨(dú)

    教你怎么用Java回溯算法解數(shù)獨(dú)

    一直不太會數(shù)獨(dú)問題,這次下決定搞明白,所以整理了本篇文章,文中有非常詳細(xì)的代碼示例,對不會算法的小伙伴們很有幫助,需要的朋友可以參考下
    2021-06-06
  • mybatis?傳入null值的解決方案

    mybatis?傳入null值的解決方案

    這篇文章主要介紹了mybatis?傳入null值的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Spring mvc AJAX技術(shù)實(shí)現(xiàn)原理解析

    Spring mvc AJAX技術(shù)實(shí)現(xiàn)原理解析

    這篇文章主要介紹了Spring mvc AJAX技術(shù)實(shí)現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • 教你使用java實(shí)現(xiàn)去除各種空格

    教你使用java實(shí)現(xiàn)去除各種空格

    本文給大家匯總介紹了5種java中去除空格的方法,分別是String.trim()、str.replace(" ", "");、replaceAll(" +","");以及自定義的remove函數(shù),非常的簡單實(shí)用,需要的小伙伴可以參考下。
    2015-03-03
  • 深入了解Java數(shù)據(jù)結(jié)構(gòu)和算法之堆

    深入了解Java數(shù)據(jù)結(jié)構(gòu)和算法之堆

    這篇文章主要為大家介紹了Java數(shù)據(jù)結(jié)構(gòu)和算法之堆 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • JavaCV?本地視頻推流實(shí)現(xiàn)依賴示例

    JavaCV?本地視頻推流實(shí)現(xiàn)依賴示例

    這篇文章主要為大家介紹了JavaCV?本地視頻推流實(shí)現(xiàn)的依賴示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • Spring中@Scope的幾種取值方式

    Spring中@Scope的幾種取值方式

    這篇文章主要介紹了Spring中@Scope的幾種取值方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論

黔东| 文昌市| 嘉祥县| 兰考县| 庄浪县| 通州市| 紫金县| 陇南市| 兴和县| 突泉县| 双江| 师宗县| 札达县| 深州市| 定兴县| 嫩江县| 志丹县| 泽普县| 乐昌市| 郑州市| 阿勒泰市| 曲麻莱县| 富顺县| 登封市| 晴隆县| 景德镇市| 苍南县| 西畴县| 余干县| 金秀| 上林县| 平利县| 北海市| 二手房| 星子县| 潼南县| 株洲县| 新龙县| 绥德县| 阜康市| 介休市|