System.out.print("你输入的值无意义! 请你重新输入: ");
String num = sc.next();
if(isNumberic(num)==true){
int y1 = Integer.parseInt(num);
return y1;
}
}
}
}
//判断字符串是否全是数字,是返回true,否则返回false
public static boolean isNumberic(String str) {
//使用正则表达式进行判断是否全为数字
Pattern pattern = Pattern.compile(“[0-9]*”);
return pattern.matcher(str).matches();
}
}
功能操作类
**概述:**实现一个特定的功能,提供使用,和工具类相似。
本项目此次使用该类用于实现显示二维码图片,想要更改图片只需修改图片存放的路径,在主程序类中写new PayView(); 就创建好了这个对象,即可展示二维码图片。
public class PayView extends JFrame {
MyPanel mp=null;
public PayView(){
mp=new MyPanel();
this.add(mp);
this.setSize(1273, 809);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
this.setVisible(true);
}
public static void main(String[] args){
new PayView();
}
}
class MyPanel extends JPanel{
Image image=null;
public void paint(Graphics g){
try {
image= ImageIO.read(new File(“E:\java\idea_test_8\src\game\1.jpg”));
g.drawImage(image, 0, 0, 1273, 809, null);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
主程序类
代码结构图:设计各个模块的方法供主方法调用,最终实现项目完整效果。(将余额和游戏次数定义为全局变量,为了避免数据意外重置)
**main()方法:**实现主界面的显示、用户的选择操作。
public static void main(String[] args) throws IOException, InterruptedException {
while (true) {
System.out.println(“**************** TESTGAME ****************”);
System.out.println(“*** 1.登录账号 ———> 开始猜数游戏 ***”);
System.out.println(“*** 2.修改密码 ———> 修改后可保存 ***”);
System.out.println(“*** 3.猜拳游戏 ———> 真好玩到爆炸 ***”);
System.out.println(“*** 4.赞助作者 ———> 可微信支付宝 ***”);
System.out.println(“*** 5.退出游戏 ———> 欢迎下次光临 ***”);
System.out.println(“(内测小程序 功能未完善)”);
System.out.print(“请输入选择:”);
//调用工具类中的判断输入方法
char c = TSUtility.readMenuSelectionPro();
switch © {
case ‘1’:
loginView();
break;
case ‘2’:
updatePw();
break;
case ‘3’:
moraGame();
break;
case ‘4’:
//创建操作类对象
new PayView();
System.out.println(“显示完成!”);
break;
case ‘5’:
System.out.println(“确认退出? y/n”);
char c1 = TSUtility.readConfirmSelection();
if (c1 == ‘Y’) {
System.out.println(“退出程序成功!”);
System.exit(0); //结束程序,JVM退出
} else {
System.out.println(“已取消退