第一次实验课总结

时间:2022-03-06 14:22:01

第一次实验课围绕Java编程环境的使用和程序的调试,大家在2小时的时间内完成一个程序的调试和改错。给定的题目是一个方阵的四则运算功能的程序,大部分同学都完成得不错,现将答题的要点总结如下:

 

错误1:给定的程序没有在解析字符串后对私有成员mat进行赋值

建议改正方法:直接对mat进行赋值

 

错误2:没有处理矩阵行列不等的情况,输入:{{1,2}}

建议改正方法:统计str.split结果中,非空串的个数是否等于 order*order进行判断

 

 

错误3:没有处理两矩阵计算时大小不匹配的情况,输入:{{1}}\n+\n{{1,2},{3,4}}

建议改正方法:在matrix类的add,sub,multiply方法中,分别加入代码进行判断

 

 

错误4:没有处理输入溢出的情况,输入:{{2147483648}}

建议改正方法:catch 掉 NumberFormatException 的错误

 

 

错误5:计算的过程中会产生溢出,例如输入:{{2147483647,1},{0,1}}\n-\n{{-1,1},{0,1}}

建议改正方法:可使用 java.math.BigInteger 修改存储和计算过程的代码,来进行大数计算,由于课堂时间比较紧张,使用long处理也算对了

 

错误6:其它输入格式问题,包括没有处理输入的矩阵格式不正确的情况、非加、减、乘、转置以外的运算符等

建议改正方法:可使用正则表达式进行匹配处理