具体如下:
连连看的小源码
package Lianliankan
import javax.swing.*
import java.awt.*
import java.awt.event.*
public class lianliankan implements ActionListener
{
JFrame mainFrame//主面板
Container thisContainer
JPanel centerPanel,southPanel,northPanel//子面板
JButton diamondsButton[][] = new JButton[6][5]//游戏按钮数组
JButton exitButton,resetButton,newlyButton//退出,重列,重新开始按钮
JLabel fractionLable=new JLabel("0")//分数标签
JButton firstButton,secondButton//
分别记录两次62616964757a686964616fe59b9ee7ad9431333335326239被选中的按钮
int grid[][] = new int[8][7]//储存游戏按钮位置
static boolean pressInformation=false//判断是否有按钮被选中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV//游戏按钮的位置坐标
int i,j,k,n//消除方法控制
代码(code)是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。
对于字符和Unicode数据的位模式的定义,此模式代表特定字母、数字或符号(例如 0x20 代表一个空格,而 0x74 代表字符“t”)。一些数据类型每个字符使用一个字节;每个字节可以具有 256 个不同的位模式中的一个模式。
在计算机中,字符由不同的位模式(ON 或 OFF)表示。每个字节有 8 位,这 8 位可以有 256 种不同的 ON 和 OFF 组合模式。对于使用 1 个字节存储每个字符的程序,通过给每个位模式指派字符可表示最多 256 个不同的字符。2 个字节有 16 位,这 16 位可以有 65,536 种唯一的 ON 和 OFF 组合模式。使用 2 个字节表示每个字符的程序可表示最多 65,536 个字符。
单字节代码页是字符定义,这些字符映射到每个字节可能有的 256 种位模式中的每一种。代码页定义大小写字符、数字、符号以及 !、@、#、% 等特殊字符的位模式。每种欧洲语言(如德语和西班牙语)都有各自的单字节代码页。
虽然用于表示 A 到 Z 拉丁字母表字符的位模式在所有的代码页中都相同,但用于表示重音字符(如"é"和"á")的位模式在不同的代码页中却不同。如果在运行不同代码页的计算机间交换数据,必须将所有字符数据由发送计算机的代码页转换为接收计算机的代码页。如果源数据中的扩展字符在接收计算机的代码页中未定义,那么数据将丢失。
如果某个数据库为来自许多不同国家的客户端提供服务,则很难为该数据库选择这样一种代码页,使其包括所有客户端计算机所需的全部扩展字符。而且,在代码页间不停地转换需要花费大量的处理时间。
import java.util.Scanner
public class Test {
public static void main(String[] args) {
int guessTime = 8
boolean restart = true
while (restart) {
System.out.println("请选择下列选项!")
System.out.println("1 ----开始猜数")
System.out.println("2 ----游戏参数设置")
System.out.println("9 ----退出")
boolean flag = true
String choose = null
Scanner in = null
while (flag) {
in = new Scanner(System.in)
choose = in.next()
if (!choose.matches("[129]")) {
System.out.println("输入错误,请重新输入")
continue
} else {
break
}
}
if ("2".equals(choose)) {
boolean chooseLevel = false
System.out.println("请选择游戏难度!")
System.out.println("1 ----难(4次)")
System.out.println("2 ----一般(6次)")
System.out.println("3 ----容易(8次)")
while (!chooseLevel) {
String s = in.next()
if (s.matches("[123]")) {
switch (Integer.parseInt(s)) {
case 1:
guessTime = 4
chooseLevel = true
break
case 2:
guessTime = 6
chooseLevel = true
break
case 3:
guessTime = 8
chooseLevel = true
break
default:
System.out.println("你输入的选择不存在(请输入1、2、3)")
break
}
} else {
System.out.println("你输入的选择不存在(请输入1、2、3)")
}
}
continue
}
if ("9".equals(choose)) {
System.exit(0)
}
if ("1".equals(choose)) {
String number = String.valueOf(Math.round(Math.random() * 100) + 1)
System.out.println(number)
boolean getIt = false
int count = 0
while (!getIt &&++count <= guessTime) {
System.out.println("请输入你猜的值(1-100)")
String s = in.next()
if (s.matches("\\d+")) {
try {
if (Integer.parseInt(s) == Integer.parseInt(number)) {
getIt = true
break
} else if (Integer.parseInt(s) >Integer.parseInt(number)) {
System.out.println("你输入的数字大了!")
} else {
System.out.println("你输入的数字小了!")
}
} catch (NumberFormatException e) {
System.out.println("你输入的数据超过Integer的最大范围!")
continue
}
} else {
System.out.println("你输入的数据不合法!")
continue
}
}
if (getIt) {
System.out.println("恭喜你猜对了,你的战斗力是" + Math.round((1 - count * 1.0 / guessTime) * 100) + "%")
} else {
System.out.println("超过次数,尚需努力")
}
in.nextLine()
in.nextLine()
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)