博客
关于我
java笔记1.20
阅读量:631 次
发布时间:2019-03-13

本文共 1174 字,大约阅读时间需要 3 分钟。

Java笔记

双色球

简述

双色球是通过随机生成号码,与用户输入的值进行对比的游戏。号码由7个球组成,其中6个为红球,1个为蓝球。红球数字范围为1-33,蓝球为1-16。号码生成后,与用户输入的值进行比对,无需顺序一致即可判定中奖。

重点知识

  • 一行接受多个数字:可以使用split(",")方法将输入值转换为数组。
  • 随机数范围的指定:使用Random.nextInt(bound)方法,区间为左闭右开。
  • 代码示例

    Random random = new Random();int randNumber = random.nextInt(MAX - MIN + 1) + MIN;

    其中,MAXMIN分别为最大值和最小值。

    五子棋

    开发背景

    五子棋是一个简单但有趣的游戏,开发周期长达半天。虽然简单,但在细节处理上仍需认真思考。

    代码结构

  • 随机数生成:使用Random.nextInt方法生成随机数。
  • 数组下标检查:通过异常捕获检查数组下标是否超出范围。
  • 落子判断:判断落子位置是否合法,并判断是否有子。
  • 代码示例

    int value3 = chessboard[abscissa][ordinate];try {    a[0] = chessboard[abscissa + 1][ordinate - 1];    a[1] = chessboard[abscissa + 2][ordinate - 2];    a[2] = chessboard[abscissa + 3][ordinate - 3];    a[3] = chessboard[abscissa + 4][ordinate - 4];    for (int i = 0; i < a.length; i++) {        if (value3 != a[i]) {            m = false;            break;        }    }} catch (Exception e1) {    m = false;}

    问题与解决方案

    已解决问题

  • 整型数组初始化:无需手动赋值,全为0即可。
  • 落子判断:正确判断落子是否有子,避免逻辑错误。
  • 异常处理:使用try-catch结构捕获异常,避免程序崩溃。
  • 未解决问题

  • 棋盘显示问题:希望棋盘共用一个起始0点(如图)。
  • 用户输入处理:希望同时接受横纵坐标,提升用户体验。
  • 提示优化:希望增加颜色或划线提示功能。
  • 字体优化:尚未尝试使用Eclipse字体。
  • 总结

    本次开发过程中,主要完成了双色球和五子棋的核心功能开发,涵盖了随机数生成、输入处理、数组操作等多个方面。虽然遇到了一些问题,但通过仔细思考和异常捕获,最终解决了大部分技术难点。后续将继续优化代码,提升用户体验和功能完善度。

    转载地址:http://otyaz.baihongyu.com/

    你可能感兴趣的文章
    Qualitor processVariavel.php 未授权命令注入漏洞复现(CVE-2023-47253)
    查看>>
    poj 1151 (未完成) 扫描线 线段树 离散化
    查看>>
    POJ 1151 / HDU 1542 Atlantis 线段树求矩形面积并
    查看>>
    poj 1163 数塔
    查看>>
    POJ 1177 Picture(线段树:扫描线求轮廓周长)
    查看>>
    Qualitor checkAcesso.php 任意文件上传漏洞复现(CVE-2024-44849)
    查看>>
    POJ 1182 食物链(并查集拆点)
    查看>>
    POJ 1185 炮兵阵地 (状态压缩DP)
    查看>>
    POJ 1195 Mobile phones
    查看>>
    POJ 1228 Grandpa's Estate (稳定凸包)
    查看>>
    poj 1236(强连通分量分解模板题)
    查看>>
    poj 1258 Agri-Net
    查看>>
    quagga 和 zebos
    查看>>
    poj 1286 Necklace of Beads
    查看>>
    POJ 1321 棋盘问题
    查看>>
    poj 1321(回溯)
    查看>>
    Qt高级——Qt元对象系统源码解析
    查看>>
    qt调用vs2008编写的dll动态库(隐式调用)
    查看>>
    Qt读取注册表默认值
    查看>>
    poj 1679 判断MST是不是唯一的 (次小生成树)
    查看>>