一、实验内容及步骤
(一)使用JDk编译、运行简单的Java程序
- 输入
cd 20175225zyr
命令进入20175225zyr
目录 - 输入
mkdir exp1
建立实验目录 - cd
exp1
进入第一个实验目录 pwd
查看当前工作路径vim Hello.java
编辑Hello.java
javac -d . Hello.java
编译代码java Hello
运行代码- 上传码云
(二)使用IDEA调试程序
- 新建HelloJDB.java文件,并编写代码,如图
- 在第5行设置断点,使用
Alt+Shift+F9
并开始调试程序
- 单击
F8
,查看sum
和变量的值
- 设置条件
i == 50
按F9
进行调试,查看变量的值
(三)练习
题目八:产生一个随机数,让用户猜测,猜错了告诉用户是大了还是小了。 并进行测试(正常情况,异常情况,边界情况)
代码为:
import java.util.Scanner;
public class shiyan3 {
public static void main(String[] args) {
int x = 1 + (int) (Math.random()*10);
int i;
do {
System.out.println("请输入你想猜的数");
Scanner reader = new Scanner(System.in);
i = reader.nextInt();
if (i < x && i > 0) {
System.out.println("小了");
} else if (i == x) {
System.out.println("正确");
} else if (i > x && i <= 10) {
System.out.println("大了");
} else {
System.out.println("false");
}
}while (i != x);
}
}
正常情况:
异常情况:
边界情况:
二、实验中遇到的问题以及解决方案
1.在练习时,要求生成一个随机数,不知道怎么写。
解决方案:通过网上查找知道,在java中,可以用random来生成随机数,但生成范围比较小,生成大于等于零小于一的double型随机数,但稍微处理则可以生成随机数。如写成 (int)(Math.random()*n)
,根据n的取值不同从而表示大于等于0小于n的随机整数,本次练习是生成1到10的随机整数,即写成 1+(int)(Math.random()*10)
,这样就可以生成1到10的随机整数。
2.在练习时,考虑到异常情况,如果输入字符串怎么办,java中 i instanceof String
可以表示字符串,但是编译的时候每次都不通过。
解决方案:根据IDEA的错误提示,发现原本定义的i是int型,不能转换为字符型,因此编译通不过。且异常情况有很多种,然后就用if-else if-else if-else分为大了,正确,小了,错误四种情况,这样就可以涵盖所有情况了。
三、实验心得与体会
1.做实验时一定要有耐心,一次不成功就多试几次,最后一定会成功的。
2.遇到不懂的问题要及时查询资料或询问同学,也许解决问题的关键就是你不会的地方。
3.在写程序时一定要考虑各个方面,要保证程序没有死角,写好程序要多次进行验证,确保程序更完善。