软件构造Lab1-Part2总结

java的文件操作稍微熟悉了一点。直接进入正题。第二部分的核心是在讲java中的异常抛出机制,我们从程序异常运行(n为偶数和负数)抛出的信息来看,生成幻方的方法中肯定不支持这两种,至于为什么,需要分析该方法才能得知。

首先,负数不支持很好理解:生成的二维数组变量不可能大小是负数。在这里就异常了,可以单步调试看一下。

其次可以试着带入一个奇数观察这个方法的赋值过程,另外还需要了解一下魔方矩阵的一个重要特点,不光是Part1中的那些,还有一个就是他的取值范围是在[1,n^2];我暂时还没研究透彻这个方法,但是通过三阶的生成方法,发现它的行和列都是以n(行/列)为准循环寻找位置赋值的,而且特别有意思的一点是:举个栗子,现在已经有两个数填充到了矩阵里面,他们一定是不同行且不同列的,而且下一个数的填充位置也要满足这个特点。emm,不多说,明天有空画一些图再看吧,这个生成方法也就是一个弱化版的,因为幻方矩阵其实还分等级来着…

再重点分享一下文件写入吧,因为之前的Part1对应的是文件读取,那部分做得好的话,其实对这部分也有帮助,因为txt文件在/src/txt(大致是这么一个路径),如果之前用的就是相对路径的话,这里可以把相对路径的字符串直接拿过来用,然后generateMagicMatrix就行。

也是第一次使用java文件操作,刚开始以为声明如

File file =new File(path);

这样的语句就已经创建了一个文件夹,之后程序报错才知道要用file.createfile()方法

此外,可能我们也不一定一次就写对程序,如果使用的是Eclipse的话这里分享一下调试的快捷键
加断点个人喜欢直接鼠标双击代码旁
F11进入调试模式
F8直接运行到下一断点处
F5 单步进入断点处方法
F6 执行到下一行代码
Ctrl+F11运行
还有一个就是优雅的退出,不知道理解的对不对:catch里输出要求的false就行了呀。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值