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命 ...
随机推荐
- css弹性布局
1.弹性布局是什么 在移动端一种方便的布局方式,打破了之前用浮动,定位的布局,更加灵活. 2.弹性布局的格式 包含父元素和子元素,有对应的属性应用在父元素和子元素达到布局的目的 3.父元素的属性 要开 ...
- php curl 实例+详解
直接上实例 <?php //创建一个新cURL资源 $ch = curl_init(); //用于中文等特殊字符的url转码 $aurl = urlencode($address); $url= ...
- BZOJ 4665: 小w的喜糖
Sol DP+容斥. 这就是一个错排的扩展...可是想到容斥却仅限于种数的容斥,如果种数在一定范围内我就会做了QAQ. 但是容斥的是一定在原来位置的个数. 发现他与原来的位置无关,可以先把每个同种的糖 ...
- supervisor的配置
看了下文档,比较多.http://www.supervisord.org/ 抱着试试又不会怀孕的心态,trying,碰了几鼻子灰,记录如下, 方便大家 1. 安装 easy_install super ...
- [转]ubuntu 14.04 如何开启和关闭触控板
转自:http://lxn348567248.blog.163.com/blog/static/1201759252014649443513/ 禁用触摸板的命令: sudo rmmod psmous ...
- EXT Grid celleditor列编辑,动态控制某一单元格只读
listeners : { beforeedit:function(editor, context, eOpts) { if(context.record.data.hasRatio == " ...
- c语言——知识点
环境: ubuntu 13.04 32位 gcc version 4.7.3 ++i,i++ 代码如下: #include <stdio.h> main() { int i; //test ...
- UIView的一些基本方法 init、loadView、viewDidLoad、viewDidUnload、dealloc
init方法 在init方法中实例化必要的对象(遵从LazyLoad思想) init方法中初始化ViewController本身 loadView方法 当view需要被展示而它却是nil时,view ...
- mach 和 array 方法
- 错误日志中关于innodb的问题收集
1.错误日志报告如下: ..... 120223 23:36:06 InnoDB: Compressed tables use zlib 1.2.3 120223 23:36:06 InnoDB: I ...