扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
没有特定多少行,根据实际情况该写多少行就写多少行
辽中网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联公司从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司。
看过几千行的代码,目前还没遇到一个java类代码行数超出的问题,不过经常用的java类的代码行数越少越好,尽量让方法独立,功能独立,加载java类是需要花时间的,合理分配最好。
这个需要建立一个数据库和配置数据源才能够正常保存游戏游戏记录
如果没有数据库的话,执行起来没有问题,
但是在猜中之后,数据不能保存
而且会报跟数据库相关的错误。。。
不过对于初学来说,足够了。。。
//猜数字游戏
//版本1.1
//作者:lymeng
//创建时间 2008/10/10
//最后修改时间 2008/10/14
import java.io.*;
import java.sql.*;
public class caishuzi
{
public static void main(String args[])
{
int suijishu; //产生的随机数
String name; //玩家的名字
int nandu=-1; //选择的难度
int caice=-1; //玩家所猜测的数字
int point=0; //记录玩家猜测的次数
int a; //判断是否保存信息成功
boolean fac=true;
String str;//用来判断是否启用了秘籍
shuru sr=new shuru();
zhuanhuan zh=new zhuanhuan();
baocun bc=new baocun();
suijishu sjs=new suijishu();
System.out.print("请输入你的名字:");
name=sr.xinxi();
System.out.println("欢迎"+name+"来到猜数字的世界,请输入整数");
System.out.println("数字越大 难度越高!");
System.out.print("难度: ");
while(fac)
{
nandu=zh.zhuanhuan1(sr.xinxi());
if(nandu-1)
{
System.out.print("你选择的难度为:"+nandu);
fac=false;
}
else
{
System.out.println("请选择正确的难度");
System.out.print("难度: ");
}
}
suijishu=sjs.suiji(nandu);
while(!fac)
{
System.out.print("请输入你要猜测的数字: ");
str=sr.xinxi();
if(str.equals("lymeng"))
{System.out.println("正确数字是: "+suijishu);}
else
caice=zh.zhuanhuan1(str);
if(caice-1)
{
if(suijishu==caice)
{
System.out.println("恭喜你 猜对啦!");
point++;
//将玩家资料保存到数据库中
a=bc.charu(name,point,nandu);
if(a-1)
System.out.println("信息保存成功");
else
System.out.println("信息保存失败");
break;
}
else if(suijishucaice)
{
System.out.println("太小了!请重新输入!");
point++;
}
else
{
System.out.println("太大了!请重新输入!");
point++;
}
System.out.println("你已经猜测了"+point+"次");
}
else
{
System.out.println("请输入一个正确的数字");
}
}
}
}
//根据难度产生随机数
class suijishu
{
public int suiji(int a)
{
int realnum;
realnum=(int)(Math.random()*50*a);
return realnum;
}
}
//记录键盘得到的信息
class shuru
{
private String str;
public String xinxi()
{
try{
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
str=bf.readLine();
str=str.trim();
}catch(Exception ex)
{System.out.println("出错啦笨蛋");}
return str;
}
}
//将键盘输入的字符转换为数字
class zhuanhuan
{
private int a;
public int zhuanhuan1(String str)
{
try{
a=Integer.parseInt(str);
return a;
}catch(Exception ex){return -1;}
}
}
class baocun
{
public int charu(String name,int point,int nandu)
{
int a=-1;
String sql;
Connection con=null;
PreparedStatement ps=null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:caishuzi");
sql="insert into user(uname,cishu,nandu) values(?,?,?)";
ps = con.prepareStatement(sql);
ps.setString(1, name);
ps.setInt(2, point);
ps.setInt(3, nandu);
a=ps.executeUpdate();
//System.out.println("aaaaaaa");
ps.close();
con.close();
}catch(Exception ex)
{System.out.println("储存出错啦!");
ex.printStackTrace();
}
return a;
}
}
先把指针移动到最后一行,然后倒着读一千行
public void seek(long pos)
throws IOException设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作。偏移量的设置可能会超出文件末尾。偏移量的设置超出文件末尾不会改变文件的长度。只有在偏移量的设置超出文件末尾的情况下对文件进行写入才会更改其长度。
参数:
pos - 从文件开头以字节为单位测量的偏移量位置,在该位置设置文件指针。
抛出:
IOException - 如果 pos 小于 0 或者发生 I/O 错误。
--------------------------------------------------------------------------------
public long length()
throws IOException返回此文件的长度。
返回:
按字节测量的此文件的长度。
抛出:
IOException - 如果发生 I/O 错误。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流