• 1 测试

  1. public class MyUtil{
  2. public static String percentage2fivegrade(int grade){
  3. //如果成绩小于60,转成“不及格”
  4. if (grade < 60 && grade >=0)
  5. return "不及格";
  6. //如果成绩在60与70之间,转成“及格”
  7. else if (grade < 70 && grade >=0)
  8. return "及格";
  9. //如果成绩在70与80之间,转成“中等”
  10. else if (grade < 80 && grade >=0)
  11. return "中等";
  12. //如果成绩在80与90之间,转成“良好”
  13. else if (grade < 90 && grade >=0)
  14. return "良好";
  15. //如果成绩在90与100之间,转成“优秀”
  16. else if (grade <= 100 && grade >=0)
  17. return "优秀";
  18. //其他,转成“错误”
  19. else
  20. return "错误";
  21. }
  22. }
  23. import junit.framework.TestCase;
  24. public class MyUtilTest extends TestCase {
  25. //@Test
  26. public void testNormal() {
  27. assertEquals("不及格", MyUtil.percentage2fivegrade(55));
  28. assertEquals("及格", MyUtil.percentage2fivegrade(65));
  29. assertEquals("中等", MyUtil.percentage2fivegrade(75));
  30. assertEquals("良好", MyUtil.percentage2fivegrade(85));
  31. assertEquals("优秀", MyUtil.percentage2fivegrade(95));
  32. }
  33. public void testBoundary() {
  34. assertEquals("不及格", MyUtil.percentage2fivegrade(0));
  35. assertEquals("及格", MyUtil.percentage2fivegrade(60));
  36. assertEquals("中等", MyUtil.percentage2fivegrade(70));
  37. assertEquals("良好", MyUtil.percentage2fivegrade(80));
  38. assertEquals("优秀", MyUtil.percentage2fivegrade(90));
  39. assertEquals("优秀", MyUtil.percentage2fivegrade(100));
  40. }
  41. public void testException() {
  42. assertEquals("错误", MyUtil.percentage2fivegrade(-5));
  43. assertEquals("错误", MyUtil.percentage2fivegrade(105));
  44. }
  45. }

  • 2 Stringbuffer

  1. public class StringBufferDemo{
  2. public static void main(String [] args){
  3. StringBuffer buffer = new StringBuffer();
  4. buffer.append('S');
  5. buffer.append("tringBuffer");
  6. System.out.println(buffer.charAt(1));
  7. System.out.println(buffer.capacity());
  8. System.out.println(buffer.indexOf("tring"));
  9. System.out.println("buffer = " + buffer.toString());
  10. System.out.println(buffer.length());
  11. }
  12. }
  13. public class StringBufferDemoTest extends TestCase {
  14. StringBuffer a = new StringBuffer("StringBuffer");
  15. StringBuffer b = new StringBuffer("StringBufferStringBuffer");
  16. StringBuffer c = new StringBuffer("StringBufferStringBufferStringBuffer");
  17. public void testchatAt() {
  18. assertEquals('S',a.charAt(0));
  19. assertEquals('f',b.charAt(20));
  20. assertEquals('B',c.charAt(30));
  21. }
  22. public void testcapacity() {
  23. assertEquals(28,a.capacity());
  24. assertEquals(40,b.capacity());
  25. assertEquals(52,c.capacity());
  26. }
  27. public void testindexOf() {
  28. assertEquals(0,a.indexOf("Str"));
  29. assertEquals(3,b.indexOf("ing"));
  30. assertEquals(8,c.indexOf("ffe"));
  31. }
  32. public void testlength() {
  33. assertEquals(12,a.length());
  34. assertEquals(24,b.length());
  35. assertEquals(36,c.length());
  36. }
  37. }
  • 3 让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确

  1. abstract class Data {
  2. abstract public void DisplayValue();
  3. }
  4. class Float extends Data {
  5. float value;
  6. Float() {
  7. value=100;
  8. }
  9. public void DisplayValue(){
  10. System.out.println (value);
  11. }
  12. }
  13. // Pattern Classes
  14. abstract class Factory {
  15. abstract public Data CreateDataObject();
  16. }
  17. class FloatFactory extends Factory {
  18. public Data CreateDataObject(){
  19. return new Float();
  20. }
  21. }
  22. //Client classes
  23. class Document {
  24. Data pd;
  25. Document(Factory pf){
  26. pd = pf.CreateDataObject();
  27. }
  28. public void DisplayData(){
  29. pd.DisplayValue();
  30. }
  31. }
  32. //Test class
  33. public class MyDoc {
  34. static Document d;
  35. public static void main(String[] args) {
  36. d = new Document(new FloatFactory());
  37. d.DisplayData();
  38. }
  39. }

  • 4 以TDD的方式开发一个复数类Complex

  1. public class Complex {
  2. private double RealPart;
  3. private double ImagePart;
  4. public Complex(double R,double I){
  5. RealPart = R;
  6. ImagePart = I;
  7. }
  8. double getRealPart(){
  9. return RealPart;
  10. }
  11. double getImagePart(){
  12. return ImagePart;
  13. }
  14. void setRealPart(double R){
  15. RealPart=R;
  16. }
  17. void setImagePart(double I){
  18. ImagePart=I;
  19. }
  20. Complex ComplexAdd(Complex a){
  21. return new Complex(a.getRealPart()+this.getRealPart(),a.getImagePart()+this.getImagePart());
  22. }
  23. Complex ComplexSub(Complex a){
  24. return new Complex(this.getRealPart()-a.getRealPart(),this.getImagePart()-a.getImagePart());
  25. }
  26. Complex ComplexMulti(Complex a){
  27. return new Complex(this.getRealPart()*a.getRealPart()-this.getImagePart()*a.getImagePart(),this.getRealPart()*a.getImagePart()+this.getImagePart()*a.getRealPart());
  28. }
  29. Complex ComplexDiv(Complex a){
  30. return new Complex((this.getRealPart()*a.getRealPart()+this.getImagePart()*a.getImagePart())/(a.getRealPart()*a.getRealPart()-a.getImagePart()*a.getImagePart()),(this.getImagePart()*a.getRealPart()-this.getRealPart()*a.getImagePart())/(a.getRealPart()*a.getRealPart()-a.getImagePart()*a.getImagePart()));
  31. }
  32. @Override
  33. public String toString(){
  34. String str="";
  35. str+=this.getRealPart();
  36. if(this.getImagePart()>=0) str+="+";
  37. str+=this.getImagePart();
  38. str+="i";
  39. return str;
  40. }
  41. }
  42. import junit.framework.TestCase;
  43. /**
  44. * Created by luzijie20155222 on 17-4-21.
  45. */
  46. public class ComplexTest extends TestCase {
  47. Complex a=new Complex(1,2);
  48. Complex b=new Complex(2,1);
  49. Complex c=new Complex(0,-1);
  50. Complex d=new Complex(-2,-1);
  51. public void testGetRealPart() throws Exception {
  52. assertEquals(1.0,a.getRealPart());
  53. assertEquals(2.0,b.getRealPart());
  54. assertEquals(0.0,c.getRealPart());
  55. assertEquals(-2.0,d.getRealPart());
  56. }
  57. public void testGetImagePart() throws Exception {
  58. assertEquals(2.0,a.getImagePart());
  59. assertEquals(1.0,b.getImagePart());
  60. assertEquals(-1.0,c.getImagePart());
  61. assertEquals(-1.0,d.getImagePart());
  62. }
  63. public void testComplexAdd() throws Exception {
  64. assertEquals("3.0+3.0i",a.ComplexAdd(b).toString());
  65. assertEquals("2.0+0.0i",b.ComplexAdd(c).toString());
  66. assertEquals("-2.0-2.0i",c.ComplexAdd(d).toString());
  67. assertEquals("0.0+0.0i",b.ComplexAdd(d).toString());
  68. }
  69. public void testComplexSub() throws Exception {
  70. assertEquals("-1.0+1.0i",a.ComplexSub(b).toString());
  71. assertEquals("2.0+2.0i",b.ComplexSub(c).toString());
  72. assertEquals("2.0+0.0i",c.ComplexSub(d).toString());
  73. assertEquals("4.0+2.0i",b.ComplexSub(d).toString());
  74. }
  75. public void testComplexMulti() throws Exception {
  76. assertEquals("0.0+5.0i",a.ComplexMulti(b).toString());
  77. assertEquals("1.0-2.0i",b.ComplexMulti(c).toString());
  78. assertEquals("-1.0+2.0i",c.ComplexMulti(d).toString());
  79. assertEquals("-3.0-4.0i",b.ComplexMulti(d).toString());
  80. }
  81. public void testComplexDiv() throws Exception {
  82. }
  83. }

  • 5 使用StarUML对实验二中的代码进行建模,发类图的截图,加上学号水印。

20155222 2016-2017-2 《Java程序设计》实验二的更多相关文章

  1. Java程序设计 实验二 Java面向对象程序设计

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  2. Java程序设计实验 实验五

    课程:Java程序设计实验   班级:1353  姓名:符余佳源  学号:20135321 成绩:                           指导教师:娄嘉鹏      实验日期:2015. ...

  3. 南邮JAVA程序设计实验1 综合图形界面程序设计

    南邮JAVA程序设计实验1  综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. ...

  4. Java程序设计 实验三

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计   班级:1353       姓名:李海空  学号:20135329 成绩:             指 ...

  5. JAVA程序设计 实验一

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1353  姓名:李海空  学号:20135329 成绩:             指导教师:娄嘉鹏 ...

  6. JAVA程序设计 实验一报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计 班级:1351  姓名:李畅宇  学号:20135129 成绩:             指导教师:娄嘉鹏 ...

  7. .NET程序设计实验二

    实验二  面向对象程序设计 一.实验目的 1. 理解类的定义.继承等面向对象的的基本概念: 2. 掌握C#语言定义类及其各种成员(字段,属性,方法)的方法: 3. 掌握方法覆盖的应用: 4. 掌握接口 ...

  8. Java程序设计 实验五

    实     验    报     告 课程:Java 班级: 1353    姓名:李海空   学号:20135329 成绩:              指导教师:娄嘉鹏   实验日期:2015.6. ...

  9. C++程序设计--实验二

    第二次实验主要内容是函数重载,快速排序及其模板实现,简单的user类实现. 实验结论: 一.函数重载编程练习 /*编写重载函数add(),实现对int型,double型和Complex型数据的加法.在 ...

  10. 201671010127 2016—2017—2 Java怎样解决Java程序中中文乱码的问题。

    这是本次第二次分享新手在编程中遇到的问题,相信很多Java新手和我一样,在Java编程中会遇到中文乱码的情况,下面我就给大家分享我遇到问题和解决问题的具体过程. 我先用Notepad++写了一个如下的 ...

随机推荐

  1. 今天开始每天一点ffmpeg知识。千里之行 。

    今天开始每天一点ffmpeg知识.千里之行 .

  2. java接口实例

    1.开发系统时,主体架构使用接口,接口构成系统的骨架2.这样就可以通过更换接口的实现类来更换系统的实现 public class printerDemo{ public static void mai ...

  3. java多态-优化上个实例

    开闭原则:对修改是封闭的,对扩展是开放的,不要违反开闭原则. 可以使用多态解决这个问题.父类的引用变量可以引用子类是对象. 写的越是抽象,越是稳定 public class printerDemo { ...

  4. 【[HAOI2015]树上染色】

    这道题真是非常神仙 第一眼看到题面肯定能想到状态是\(dp[i][j]\)表示\(i\)这棵子树里染了\(j\)个黑点的最大值 最大值? 什么最大值,之后就会发现这个样子完全没有办法转移 所以我们考虑 ...

  5. 4、Android-数据存储方案(文件存储/SharedPreferences)

    简介: 任何一个应用程序都需要和数据进行交互 对于软件来说微博.QQ等都需要关系的是数据 没有数据的应用程序是一个没有灵魂的软件 而且还没有实际的用途 可以认为是单机 4.1.持久化技术的简介 数据持 ...

  6. 进入WinRe(windows恢复环境)

    放个预览图: 方法汇总: 1. 2 . +Shift  3 ”shutdown /r /o“ 或 "bootim" 4 5 启动中强制关闭3次以上 6 狂按F8 (不同的电脑操作不 ...

  7. [运维笔记] Nginx编译安装

    yum -y install pcre-devel.x86_64 yum -y install openssl openssl-devel.x86_64 useradd www -s /sbin/no ...

  8. PHP整数转小数

    sprintf('%.2f',$memrow['yjrebate1']+$memrow['yjrebate2'])

  9. 简单说明一下JS中的函数声明存在的“先使用,后定义”

    首先看一段JS代码,其中使用了两种方式声明了两个函数,分别在不同的地方调用两个函数: <script> 'use strict'; // 输出hello函数 console.log(hel ...

  10. MongoDB简易

    一   安装 1.下载 $ brew install mongodb 2.启动 $ mongod --config /usr/local/etc/mongod.conf 3.连接 $ mongo 二 ...