实验一《Java开发环境的熟悉》_实验报告
一、实验内容与主要步骤
1.Linux系统命令行下java程序开发
- 实验要求
- 1 建立“自己学号exp1”的目录
- 2 在“自己学号exp1”目录下建立src,bin等目录
- 3 javac,java的执行在“自己学号exp1”目录
- 4 提交 Linux或Window或macOS中命令行下运行Java的全屏截图, 运行结果包含自己学号等证明自己身份的信息
- 5 代码提交码云
- 实验过程
- 进入命令行界面
- 输入
vim exp1Hello.java
编辑exp1Hello.java
,并输入以下代码:
import java.util.Scanner;
public class exp1Hello{
public static void main(String[] args){
System.out.println("Input your first name, please:");
Scanner s = new Scanner(System.in);
String name = s.next();
System.out.println("Hello " + name + " !");
}
}
- 输入``javac -d bin exp1Hello.java``命令编译代码,进入bin文件夹,输入``java exp1Hello``命令运行程序。结果如下图所示:
2.利用IDEA进行调试
- 实验要求
- 参考http://www.cnblogs.com/rocedu/p/6371315.html,在Window环境中 IDEA中调试设置条件断点
- 实验过程
首先要设置断点和单步运行。在要设置断点的行号旁用鼠标单击一下,然后单击菜单
「Run」->「Debug...」
开始调试Java程序。设置条件断点,我们在第9行左边断点处单击鼠标右键,弹出断点属性框,我们设置条件“i==50”
在第十二行设个临时断点
利用方法断点测试方法是否出错
3.练习自己的练习项目
- 实验要求
- 参考实验一 Java开发环境的熟悉(Linux+Eclipse)http://www.cnblogs.com/rocedu/p/4421202.html, 练习提交自己练习项目
- 判断一个数是不是回文数,数从命令行输入,并进行测试(正常情况,异常情况,边界情况)。
- 实验过程
- 1.编写伪代码:
- 判断回文数
- 将输入的长数据替换成字符串;
- 将字符串复制一份;
- 将一和二首尾比较,且使用一个变量统计比较次数;
- 如果有不一样的则退出“不是回文数”;
- 如果都一样且比较次数等于数字长度则“其是回文数”;
- 判断回文数
- 2.代码:
- 1.编写伪代码:
public class HuiWen {
public static void main(String[] args) {
String str1 = args[0] + "";
StringBuilder str2 = new StringBuilder(str1);
int count = 0;
for (int i = 0,j = str2.length()-1; i < str1.length(); i++,j--) {
if (str1.charAt(i) != str2.charAt(j)) {
System.out.println(str1 + "不是回文数");
break;
} else {
count++;
}
}
if (count == str1.length()) {
System.out.println(str1 + "是回文数");
}
}
}
- 3.运行结果截图
- 正常情况
- 异常情况
- 边界情况
二、实验过程中的困难
1.数字与字符串间的转化
- 其实感觉命令行输入就是字符串,不过还是需要将输入的数字各数位分开,所以去找了java中与之相关的语句
- string 和int之间的转换
string转换成int :Integer.valueOf("12")
int转换成string : String.valueOf(12)
参考博客
- string 和int之间的转换
2.字符串中索引某位的字符
- 在自己敲代码的时候我用
str1[i] != str2[j]
发现编译错误,就百度了charAt()
语句发现这条语句可以帮助我们返回指定索引处的char值,这样在比较时才采用了str1.charAt(i) != str2.charAt(j)
来比较数的首尾情况。
参考资料1 2
3.在IDEA中运行命令行输入的程序
- 在上方工具栏点击Run选项,然后会出来一个小框,点击Edit选项,在
Program arguments
栏输入你要输入的命令行参数,点击Run就可以啦!多个参数用空格分开
参考博客
三、实验总结与感悟
- 当你接触到一定新事物时一定要多与它接触,熟悉它的流程,像这次实验的Linux系统命令,IDEA这个工具,它们都有自己的好处与用途,现在又有百度之类的网站需要什么,这个功能怎么实现都可以找到。这些都是一个学习的过程,当你有了这个过程之后,以后面对别的东西时也能变得得心应手,就是安装太费劲了。
- 这次分配到的小程序之前在学习C语言时肯定是做过的,在如何判别回文数上大致思想都是差不多的,不过还是要注意两种不同的语言语法在编写和运用上的差异,这同样是在以后的学习生活中不可避免的,接触到相似的东西我们一定要注意认真辨别他们之间的异同。
步骤 | 耗时 | 百分比 |
---|---|---|
需求分析 | 10min | 5.7% |
设计 | 25min | 14.7% |
代码实现 | 80min | 47.1% |
测试 | 10min | 5.7% |
分析总结 | 45min | 26.5% |