南昌大学实验报告
学生姓名:学号:专业班级:
实训类型:□ 验证 □ 综合 □ 设计□ 创新 实验日期:2017.11.8 实验成绩:
一、 实验项目名称
字符串和数组
二、 实验的评分标准
实验分为A~F,A为最高,F最低。
F:在规定时间内没有完成所有的实验,而且没有及时提交实验报告,或者实验过程中出现了抄袭复制他人实验代码。
D:能完成实验,但是实验结果出现严重错误,不能体现对教学内容的理解。 C:能基本完成实验,实验结果基本正确。但是实验内容有较少的错误,提交的实验代码质量一般。
B:能较好的完成实验,实验报告条理清楚,实验代码结构清晰,代码质量较高,及时更正试验中出现的错误,并对运行中一些异常错误进行分析,解释错误产生的原因。
A:能较好的完成实验,实验代码质量高,实验报告完成度高,能在实验完成的基础上,根据个人的理解增加实验的新功能,具有一定的创新能力。
三、 实验目的和要求
1.掌握java的基础知识。
2.掌握和运用java的控制语句和数组。 3.掌握和运用java的字符串。
四、 实验内容
1.使用BigInteger计算超大整数的问题。
2.结合字符串和数组计算超大整数的问题
这里,我模仿Math写了专门计算数组形式存放整数的一个工具类(见后面源代码),只有静态函数,想来挑战Biginteger类。在循环体计算前后,分别用时间函数获取系统当前时间,作差来近似等价于核心运算时间。Biginteger类耗时1ms,自己写的方法耗时13ms,相差13倍,惨败。
3.字符串的“==”和equals()方法。
详细结果解释在源代码注释中给出。
4.统计英文单词
5.用StringBuffer模拟扑克牌洗牌
6.数独游戏
Clear:清除用户输入的所有数据
Restart:开始新的数独游戏
Check:检查用户输入数据的正确性 提示框
用户输入的数字显示蓝色,已知的数字显示黑色
为增加可判断性,做出了灰色阴影效果
7.财务应用程序,比较不同利率下的贷款。
8.财务应用程序,信用卡号的合法性
实验源代码如下:
1.使用Biginteger计算大数
package one;
importjava.math.BigInteger;
public class BigintegerCal {
public static void main(String args[]){ BigInteger res = new BigInteger(\BigInteger b = new BigInteger(\
long start = System.currentTimeMillis(); for(inti = 1;i<=100;i++){
b = b.multiply(new BigInteger(\