20175203 2018-2019 实验三 《敏捷开发与XP实践》

实验要求

  • 没有Linux基础的同学建议先学习《Linux基础入门(新版)》《Vim编辑器》 课程
  • 完成实验、撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用,程序的编辑,调试,运行等)、解决办法(空洞的方法如“查网络”、“问同学”、“看书”等一律得0分)以及分析(从中可以得到什么启示,有什么收获,教训等)。报告可以参考范飞龙老师的指导
  • 严禁抄袭,有该行为者实验成绩归零,并附加其他惩罚措施。

    实验步骤

    (一)

  • 安装alibaba插件
    点击file > settings> Plugins 然后直接搜索alibaba并下载即可(记得下载那个写着java的)

*alibaba的使用
右键左侧项目名,并点击编码规约扫描即可

Code菜单

我觉得比较好用的是规范缩进,即ctrl alt L可以将代码按层次缩进
对例子代码进行规范
() /** * CodeStandard * * @author myd20175203 * @date 2019/4/29 */ public class CodeStandard { public static void main(String [] args){ StringBuffer buffer = new StringBuffer(); buffer.append('S'); buffer.append("tringBuffer"); System.out.println(buffer.charAt(1)); System.out.println(buffer.capacity()); System.out.println(buffer.indexOf("tring")); System.out.println("buffer = " + buffer.toString()); int n = 20 ; if(buffer.capacity()<n) { buffer.append("1234567"); } for(int i=0; i<buffer.length();i++) { System.out.println(buffer.charAt(i)); } } } ()

就是按照扫描后的提示进行修改即可,有的格式错误可以通过直接点击进行更改(如大括号等)

(二)

*将自己的学习搭档加入到自己的项目中
打开码云后,点击仓库成员管理并分享链接即可。

*添加搭档的测试代码并进行重构

重构后如下
() /** * Complex * * @author myd20175203 * @date 2019/4/29 */ public class Complex { private double RealPart; private double ImagePart; public Complex() {} public Complex(double R,double I){ setRealPart(R); setImagePart(I); } public void setRealPart(double R){ RealPart=R; } public void setImagePart(double I){ ImagePart=I; } public double getRealPart(){ return RealPart; } public double getImagePart(){ return ImagePart; } Complex ComplexAdd(Complex a) { Complex New =new Complex(); New.RealPart=this.RealPart+a.RealPart; New.ImagePart=this.ImagePart+a.ImagePart; return New; } Complex ComplexSub(Complex a){ Complex New =new Complex(); New.RealPart=this.RealPart-a.RealPart; New.ImagePart=this.ImagePart-a.ImagePart; return New; } Complex ComplexMulti(Complex a){ Complex New =new Complex(); New.RealPart=this.RealPart*a.RealPart-this.ImagePart*a.ImagePart; New.ImagePart=this.ImagePart*a.RealPart+this.RealPart*a.ImagePart; return New; } Complex ComplexDiv(Complex a){ double sum=a.ImagePart*a.ImagePart+a.RealPart*a.RealPart; Complex b = new Complex(a.getRealPart()/sum, -a.getImagePart()/sum); return ComplexMulti(b); } @Override public String toString() { if(ImagePart>0.0) { return RealPart+"+"+ImagePart+"i"; } else if(ImagePart==0.0) { return RealPart+" "; } else { return RealPart+""+ImagePart+"i"; } } @Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } Complex complex = (Complex) o; return Double.compare(complex.getRealPart(), getRealPart()) == 0 && Double.compare(complex.getImagePart(), getImagePart()) == 0; } } ()


密码学应用

本次实验我选取的是凯撒密码的加密算法,代码如下
() import java.util.Scanner; public class Kaisa { public static void main(String[] args) { System.out.print("请输入明文:"); Scanner a=new Scanner(System.in); String b=a.nextLine(); System.out.print("请输入密钥:"); Scanner c=new Scanner(System.in); int key=c.nextInt(); Encrypt(b, key); } public static void Encrypt(String str,int k){ String s=""; for (int i = 0; i < str.length(); i++) { char c=str.charAt(i); if(c>='a'&&c<='z'){ c+=k%26; if(c<'a') c+=26; if(c>'z') c-=26; } else if(c>='A'&&c<='Z'){ c+=k%26; if(c<'A') c+=26; if(c>'Z') c-=26; } s+=c; } System.out.println(str+" 加密为: "+s); } } ()

即将明文中的所有字母都在字母表上向后按照密钥的值进行偏移后替换成密文

20175203 2018-2019 实验三 《敏捷开发与XP实践》的更多相关文章

  1. 2018-2019-20175205 实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    2018-2019-20175205 实验三敏捷开发与XP实践<Java开发环境的熟悉>实验报告 实验要求 没有Linux基础的同学建议先学习<Linux基础入门(新版)>&l ...

  2. 20175314 实验三 敏捷开发与XP实践

    20175314 实验二 Java面向对象程序设计 一.实验内容 XP基础 XP核心实践 相关工具 二.实验步骤 (一)代码格式化 创建"175314.exp3"项目,在该项目下创 ...

  3. #实验三 敏捷开发与XP实践---实验报告

    一.实验三 敏捷开发与XP实践-1 1.实验要求 -实验三 敏捷开发与XP实践 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成I ...

  4. 20165223 实验三 敏捷开发与XP实践

    目录 一.实验报告封面 二.具体实验内容 (一)敏捷开发与XP实践-1 代码规范格式化 (二)敏捷开发与XP实践-2 添加搭档项目 (三)敏捷开发与XP实践-3 搭档代码重构 (四)敏捷开发与XP实践 ...

  5. 20165323 实验三 敏捷开发与XP实践

    一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:杨金川 学号:20165323 指导教师:娄嘉鹏 实验日期:2018年4月28日 实验时间:13:45 - 15:25 实验序号:实验 ...

  6. 20165235 实验三 敏捷开发与XP实践

    20165235 实验三 敏捷开发与XP实践 主目录: 姓名:祁瑛 学号:20165235 班级:1652 实验课程:JAVA程序设计 实验名称:Java面向对象程序设计 实验时间:2018.4.30 ...

  7. 20172328《程序设计与数据结构》实验三 敏捷开发与XP实践报告

    20172328<程序设计与数据结构>实验三 敏捷开发与XP实践报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 李馨雨 学号:20172328 实验教师:王志强 ...

  8. 20165336 实验三 敏捷开发与XP实践

    20165336 实验三 敏捷开发与XP实践 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:康志强 学号:20165336 指导教师:娄嘉鹏 实验日期:2018年4月28日 实验时 ...

  9. 20165215 实验三 敏捷开发与XP实践

    20165215 实验三 敏捷开发与XP实践 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:张家佳 学号:20165215 指导教师:娄嘉鹏 实验日期:2018年4月28日 实验时 ...

  10. 2018-2019-2 20175306实验三敏捷开发与XP实践《Java开发环境的熟悉》实验报告

    2018-2019-2 20175306实验三敏捷开发与XP实践<Java开发环境的熟悉>实验报告 实验内容 XP基础 XP核心实践 相关工具 实验要求 1.没有Linux基础的同学建议先 ...

随机推荐

  1. PTA 1121 Damn Single

    题目链接:1121 Damn Single (25 分) "Damn Single (单身狗)" is the Chinese nickname for someone who i ...

  2. MySQL DDL-对库和表的操作

    #DDL /* 数据定义语言 库和表的管理 一.库的管理 创建.修改.删除 二.表的管理 创建.修改.删除 创建:create 修改: alter 删除:drop */ 一.库的管理 #1.库的创建 ...

  3. Java笔记——Map集合

    Map集合接口 Map集合与Collection不是从属关系,是平级的 Map集合的映射特点 一个映射不能包含重复的键,由此键只能允许有一个空null 每个键最多只能和一个值对应 值可以重复,由此值允 ...

  4. exports、module.exports和export、export default到底是咋回事

    地址1:https://segmentfault.com/a/1190000010426778 地址2:https://blog.csdn.net/caixiaowang/article/detail ...

  5. BZOJ 3931 (网络流+最短路)

    题面 传送门 分析 考虑网络流 注意到数据包走的是最短路,所以我们只需要考虑在最短路上的边 由于最短路可能有多条,我们先跑一遍Dijkstra,然后再\(O(m)\) 遍历每条边(u,v,w) 如果d ...

  6. 1.openshift搭建

    第1章 主机规划和所需文件 1.1 主机规划 IP地址 域名 用途 11.11.233.125 master01.song.test.cnpc 容器编排.etcd 11.11.233.126 mast ...

  7. Mysql命令收集【重要】

    1.在linux上获取Mysql服务器状态,及版本: [root@host]# mysqladmin --version 结果信息: mysqladmin  Ver 8.42 Distrib 5.7. ...

  8. Java Predicate

    Predicate 接口说明 /* * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. * O ...

  9. Nginx学习总结:geo与image模块(四

    斜体下划线,表示建议采用默认配置,无需显式的配置 一.ngx_http_geo_module 核心特性为:根据客户端IP(段),geo模块将会匹配出指定的变量(比如,国家代码,城市代码).geo模块可 ...

  10. 如何为nginx配置https(免费证书)

    前言: 给http协议申请ssl免费证书,还是比较主流的一种方式,但是逐渐得一些浏览器不支持自签名的证书了.毕竟这是为了使用者及平台都变得安全的方式,所以无可厚非的,而且也有很多网站即使不使用商业付费 ...