20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

一、实验内容及步骤

(一)使用JDK编译、运行简单的java程序

命令行下的程序开发

步骤:打开cmd,建立HelloWorld文件夹,在文件夹下面建立java文件。进入java文件开始编写程序。

(二)使用IDEA编辑、编译、运行、调试Java程序

1、新建「HelloJDB」类,输入如下代码:

import java.util.Scanner;
public class Hello {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("请输入名字:");
String name=new String(scanner.nextLine());
System.out.println("Hello"+name);
}
}

2、在需要设置断点的一行左侧单击鼠标,出现红色圆点。比如如下在第六行设置了断点,

在上方Run菜单找到Debug...进行单步调试:

截止到断点运行结果如下:

二、练习:实现四则运算。

『要求』:通过命令行和IDEA两种方式实现,在IDEA下练习调试程序。

设计思路:

1.对于四则运应采用BigDecimal进行实现。

2.接受用户输入并进去相应的程序段。

代码如下:

import java.util.Scanner;
import java.math.BigDecimal;
public class sizeyunsuan {
public static void main(String[] args) {
String name1="加法";
String name2="减法";
String name3="乘法";
String name4="除法";
Scanner scanner=new Scanner(System.in);
System.out.printf("开始四则运算%n");
System.out.printf("选择加法、减法、乘法、除法:");
String str=new String(scanner.nextLine());
System.out.printf("请输入数字,两数字以空格分割:");
if(name1.equals(str)){
BigDecimal a=new BigDecimal(scanner.nextFloat());
BigDecimal b=new BigDecimal(scanner.nextFloat());
System.out.printf("结果是%f%n",a.add(b));
}
else if(name2.equals(str)){
BigDecimal a=new BigDecimal(scanner.nextFloat());
BigDecimal b=new BigDecimal(scanner.nextFloat());
System.out.printf("结果是%f%n",a.subtract(b));
}
else if(name3.equals(str)){
BigDecimal a=new BigDecimal(scanner.nextFloat());
BigDecimal b=new BigDecimal(scanner.nextFloat());
System.out.printf("结果是%f%n",a.multiply(b));
}
else if(name4.equals(str)){
BigDecimal a=new BigDecimal(scanner.nextFloat());
BigDecimal b=new BigDecimal(scanner.nextFloat());
System.out.printf("结果是%f%n",a.divide(b));
}
else System.out.printf("输入不合法");
}
}

三、实验过程中遇到的问题

在接受用户输入的时候

if String name=="加法"

是无法通过运行的,因为我们知道String是建立一个对象,只有用户的输入和字符串“加法”指向同一个对象的时候才成立,但显然所指的并不是同一个对象,所以后面改成了

        String name1="加法";
String name2="减法";
String name3="乘法";
String name4="除法";
...;
if(name1.equals(str));
...;
else if(name2.equals(str));
...;
else if(name3.equals(str));
...;
else if(name4.equals(str));
....;

程序能够成功运行。

20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告的更多相关文章

  1. 20145308刘昊阳 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20145308刘昊阳 <Java程序设计>实验一报告 实验名称 Java开发环境的熟悉 实验内容 使用JDK编译.运行简单的Java程序 2.使用Eclipse 编辑.编译.运行.调试J ...

  2. 20175316 盛茂淞 2018-2019-2 《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20175316 盛茂淞 2018-2019-2 <Java程序设计>实验一 Java开发环境的熟悉 实验报告 一.实验要求 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA ...

  3. 20165327《Java程序设计》实验一 Java开发环境的熟悉 实验报告

    20165327<Java程序设计>实验二 <Java面向对象程序设计>实验报告 实验二 <Java面向对象程序设计> 一.实验报告封面 课程:Java程序设计 班 ...

  4. 20165205 实验一 java开发环境的熟悉 实验报告

    20165205 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:刘喆君 学号:20165205 指导教师:娄嘉鹏 实验日期:2018年4月2日 实验 ...

  5. 实验一《开发环境的熟悉》&实验二《固件设计》

    20145312&20145338 实验一<开发环境的熟悉>&实验二<固件设计> 合作博客链接:http://www.cnblogs.com/yx2014531 ...

  6. 20162327实验一Java开发环境的熟悉实验报告

    20162327 <程序设计与数据结构>第一次实验报告 基础知识 1.JDB的使用 使用JDB调试程序需要以下五个步骤: 1.设置断点 stop in 2.run 3.print 4.ne ...

  7. 20145233韩昊辰 《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)

    20145233 <Java程序设计>实验报告一:Java开发环境的熟悉 实验要求 使用JDK编译.运行简单的Java程序: 使用IDEA 编辑.编译.运行.调试Java程序. 实验内容 ...

  8. 20175236 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

    一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:温丰帆 学号:20175236 指导教师:娄嘉鹏 实验日期:2019年4月2日 实验时间:13:45 - 15:25 实验序号:实验一 ...

  9. 20165234 《Java程序设计》实验一 Java开发环境的熟悉

    一.实验报告封面 课程:Java程序设计  班级:1652班  姓名:刘津甫  学号:20165234 指导教师:娄嘉鹏  实验日期:2018年4月2日 实验时间:15:35 - 17:15  实验序 ...

  10. 2018-2019-2 20175227张雪莹 《Java程序设计》 实验一 Java开发环境的熟悉

    2018-2019-2 20175227张雪莹<Java程序设计> 实验一 Java开发环境的熟悉 一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:张雪莹 学号:2017 ...

随机推荐

  1. 树-二叉搜索树-AVL树

    树-二叉搜索树-AVL树 树 树的基本概念 节点的度:节点的儿子数 树的度:Max{节点的度} 节点的高度:节点到各叶节点的最大路径长度 树的高度:根节点的高度 节点的深度(层数):根节点到该节点的路 ...

  2. Python中readline()函数 去除换行符

    从Python中readline()函数读取的一行内容中含有换行符\n,很多时候我们需要处理不含有换行符的字符串,此时就要去掉换行符\n. 方法是使用strip()函数. 例子如下: f = open ...

  3. BT提权wind2008R2

    昨天中午打开电脑,对着菜刀在那翻啊翻,找到一个64bit的os. 因为这个ip不在曾经提权过的主机列表里面,心想这应该是个低权限的网站,顺手打个whoami试试,结果给我返回了"nt aut ...

  4. J2EE项目异常处理(转)

     为什么要在J2EE项目中谈异常处理呢?可能许多java初学者都想说:“异常处理不就是try….catch…finally吗?这谁都会啊!”.笔者在初学java时也是这样认为的.如何在一个多层的j2e ...

  5. es6面试题--Promise相关

    1. const promise = new Promise((resolve, reject) => { console.log(); resolve(); console.log(); }) ...

  6. MMM的一个Bug

    最近由于 CPAN上 Net::ARP 这个包的稳定版本从 1.0 升级到了 1.0.8, 导致触发了mmm的一个bug.   bug的现象: agent没有办法将VIP附着在本机上. agent日志 ...

  7. 【RabbitMQ】2、RabbitMQ入门程序——Hello World

      首先说一下,MQ全称为Message Queue消息队列是一种应用程序对应用程序的通信方法.应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们.消息传递指的是程序 ...

  8. 无法执行程序。所执行的命令为 "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" /noconfig /fullpaths @"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\b411ea32\b48a9fb\aun5r0xd.c

    解决方案 将应用程序池进程模型中的标识设为“LocalSystem”即可.

  9. BZOJ4008:[HNOI2015]亚瑟王(DP,概率期望)

    Description 小 K 不慎被 LL 邪教洗脑了,洗脑程度深到他甚至想要从亚瑟王邪教中脱坑. 他决定,在脱坑之前,最后再来打一盘亚瑟王.既然是最后一战,就一定要打得漂亮.众所周知,亚瑟王是一个 ...

  10. POJ2187 Beauty Contest(旋转卡壳)

    嘟嘟嘟 旋转卡壳模板题. 首先求出凸包. 然后\(O(n ^ 2)\)的算法很好想,但那就不叫旋转卡壳了. 考虑优化:直观的想是在枚举点的时候,对于第二层循环用二分或者三分优化,但实际上两点距离是不满 ...