20145206邹京儒《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145206《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
实验内容及步骤
1.使用JDK编译、运行简单的Java程序:
建立实验目录:

在IDEA里输入一段程序:
package ZJR;
/**
* Created by Administrator on 2016/4/10.
*/
import java.util.Scanner;
public class Hello{
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 + " !");
}
}
用命令行编译运行结果:

2.使用IDEA 编辑、编译、运行、调试Java程序。
在IDEA中新建工程:

新建Java类,新建包:

在IDEA中输入如下代码:
package zjr;
/**
* Created by Administrator on 2016/4/10.
*/
public class HelloRose {
public static void main(String[] args) {
int i = 5;
int j = 6;
int sum = add(i, j);
System.out.println(sum);
sum = 0;
for(i=0; i< 100; i++)
sum += i;
System.out.println(sum);
}
public static int add(int augend, int addend){
int sum = augend + addend;
return sum;
}
}
得到运行结果:

在IDEA中找到断点调试的方法:

发现只要在一行代码的最左端点击左键即可
接着用Debug调试:

发现停止在第15行:

练习2:实现四则运算
实现四则运算代码如下:
/**
* Created by Administrator on 2016/4/8.
*/
import java.util.Scanner;
public class sizeyunsuan1 {
public static void main(String[] args) {
System.out.println("请输入第一个数");
Scanner scanner = new Scanner(System.in);
double i;
i= scanner.nextDouble();
System.out.println("请输入第二个数");
Scanner scanner1 = new Scanner(System.in);
double j;
j = scanner1.nextDouble();
System.out.println("请输入要进行什么操作");
Scanner scanner3 = new Scanner(System.in);
String op;
op = scanner3.next();
char z = op.charAt(0);
if(z =='+'){
System.out.printf("%f",i+j);
}
else if(z == '-'){
System.out.printf("%f",i-j);
}
else if(z =='*'){
System.out.printf("%f",i*j);
}
else if(z == '/'){
if(j == 0) System.out.println("除数不能为0");
else System.out.printf("%f",i/j);
}
}
}
运行结果:


设计过程
本题要求实现四则运算,那就是加减乘除都要能计算,分为操作数与操作符两部分,分别让用户输入,操作符部分用if,else语句完成。
遇到的问题及解决过程
问题一:在需要输入操作符时,按理来说应该把操作符设为char型,但是在下一行我输入nextChar(),会出现错误

解决过程:翻开书本,看到P87中Scanner的next****()方法,发现并没有nextChar(),于是我意识到可能不存在nextChar(),那怎么办呢?只能用字符串啦,我运用了next()方法,要取得这个字符串的第一个字符,我选择用charAt(0),这样问题就解决啦!
问题二:在输出时,因为我之前设置的操作数都是double型,我想最后输出也应该是double型,所以我就写%lf,但发现运行出来是不对的。
解决过程:我百思不得其解,后来上网查找资料才知道,原来Java里用于浮点数的只有%f,没有%lf,于是我改成%f就对啦!
心得体会
第一次做Java实验,其实刚开始心里有点没底,尤其是知道要自己编代码,毕竟自己之前没有太多编代码的经验。看到题目之后,觉得不是很难,但还是上网搜了一下相关代码,发现那些代码都好复杂,实现的功能也都很强大,我想我们毕竟接触Java的时间比较短,应该先从简单的开始编起,于是我翻开书本准备编一个简单一点的程序。稍微学习了一下书上的知识点,把有些例子看了一下,我就大概会编了,虽然我自己编出来的程序很简单,实现的功能也不是那么强大,但是我相信随着我对Java了解的深入会慢慢改进的,运行出结果还是有满满的成就感滴~
PSP时间
| 步骤 | 耗时 | 百分比 |
|---|---|---|
| 需求分析 | 10min | 10% |
| 设计 | 20min | 20% |
| 代码实现 | 30min | 30% |
| 测试 | 20min | 20% |
| 分析总结 | 20min | 20% |
20145206邹京儒《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)的更多相关文章
- 20145206邹京儒《Java程序设计》课程总结
20145206邹京儒<Java程序设计>课程总结 (按顺序)每周读书笔记链接汇总 第一周:http://www.cnblogs.com/ZouJR/p/5213572.html http ...
- 20145206邹京儒 web安全基础实践
20145206邹京儒 web安全基础实践 一.实践过程记录 关于WebGoat 1.我们在命令行里执行:java -jar webgoat-container-7.0.1-war-exec.jar运 ...
- 20145206邹京儒Exp6 信息搜集与漏洞扫描
20145206邹京儒Exp6 信息搜集与漏洞扫描 一.实践过程记录 openvas漏洞扫描 1.openvas-check-setup来查看下他的安装状态: 如下图所示:在步骤7中出现错误,显示需要 ...
- 20145206邹京儒 Exp8 Web基础
20145206邹京儒 Exp8 Web基础 一.实践过程记录 Apache (一)环境配置 1.查看端口占用:在这里apach2占用端口80 2.测试apache是否正常工作:在kali的火狐浏览器 ...
- 20145206邹京儒 EXP7网络欺诈技术防范
20145206邹京儒 EXP7网络欺诈技术防范 一.实践过程记录 URL攻击实验前准备 1.在终端中输入命令:netstat -tupln |grep 80,查看80端口是否被占用,如下图所示 2. ...
- 20145206邹京儒MSF基础应用
20145206邹京儒MSF基础应用 一.MS08_067漏洞渗透攻击实践 实验前准备 1.两台虚拟机,其中一台为kali,一台为windows xp sp3(英文版). 2.在VMware中设置两台 ...
- 20145206邹京儒《网络对抗技术》 PC平台逆向破解
20145206邹京儒<网络对抗技术> PC平台逆向破解 注入shellcode并执行 一.准备一段shellcode 二.设置环境 具体在终端中输入如下: apt-cache searc ...
- 20145206邹京儒《网络对抗》逆向及Bof基础实践
20145206邹京儒<网络对抗>逆向及Bof基础实践 1 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:ma ...
- 20145314郑凯杰 《Java程序设计》实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告
20145314郑凯杰 <Java程序设计>实验一 Java开发环境的熟悉(Windows + Eclipse)实验报告 实验要求 •使用JDK编译.运行简单的Java程序: •使用Ecl ...
- 20145316《Java程序设计》实验一:Java开发环境的熟悉(Windows + IDEA)
20145316<Java程序设计>实验一:Java开发环境的熟悉(Windows + IDEA) 一.DOC命令行下Java程序开发 1.打开cmd,输入 mkdir 20145316命 ...
随机推荐
- JAVA设计模式 之 策略模式
一. 定义 设计模式定义了算法族,分别封装起来,让他们之间可以互相替代,此模式让算法的变化独立于使用算法的客户(该定义来自于Head First 设计模式). 二. 应用场景 当我们在应用程序中完成一 ...
- BZOJ1861——book
就是给你一摞书,然后又询问第k大,编号为x的书是第几大,然后修改书的位置 splay模板题...然而我还是不会,,,又遇到lrj的书的坑了,rj的书里没有father,顿时弄得我ask不会搞了 注意合 ...
- Android学习笔记(二十一)——实战:程序数据共享
//此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! 我们继续在Database项目的基础上继续开发,通过内容提供器来给它加入外部访问接口.首先将 MyDataba ...
- windows7 + cocos2d-x 3.2 +vs2012 速度真的很慢
每次编译要大半天,简直伤不起,这样效率如何上的去???有谁有办法?
- java的字体的颜色,型号,大小的方法
jTextPane1.setForeground(Color.green);//设置java字体的颜色 设置字体的颜色和型号和大小 jTextPane1.setFont(new Font(&quo ...
- SMT 的基本流程?SMT的工艺流程?SMT的设备操作?
一.SMT工艺流程------单面组装工艺来料检测 --> 丝印焊膏(点贴片胶)--> 贴片 --> 烘干(固化) --> 回流焊接 --> 清洗 --> 检测 - ...
- Objective C 内存管理[转]
1 配对原则 alloc – release new – release retain - release copy – release 2 new和alloc-init的区别 (1)区别只在于a ...
- 常见的SQL语句
1.select decode(a.xh,'','0','1')||decode(b.xh,'','0','1') from A a left join B b on a.xh=b.xh where ...
- response content-type json
2015年11月3日 15:47:43 百度知道:ajax开发中在请求服务器端的响应时, 对于每一种返回类型 规范的做法是要在服务端指定response的contentType 常遇到下面的几种情况: ...
- perl q qq qr qw qx 区别与使用方法
1.q 相当于 单引号' ' 转义字符无效 q可以使用()[] {} // ,, 2.qq 相当于" " 转义字符有效 qq可以使用()[] {} // ,, 3.qw 相当于 ...