20175312 2018-2019-2 《Java程序设计》第8周学习总结

20175312 2018-2019-2 《Java程序设计》第8周学习总结

教材学习内容总结

已依照蓝墨云班课的要求完成了第十章的学习,主要的学习渠道是PPT,和书的课后习题。
总结如下:

1、第十章的主要内容:
泛型
链表
堆栈
散列映射
树集
树映射

2、完成了课下的“Arrays和String单元测试”以及“程序设计中临时变量的使用”

3、代码已经上传至码云,链接如下:
https://gitee.com/dky20175312/dky_20175312_warehouse_1/tree/master/jiaocaichengxu

代码调试

  • Arrays和String单元测试
    代码如下:

    import junit.framework.TestCase;
    import org.junit.Test;
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    import static java.util.Arrays.binarySearch;
    import static org.junit.Assert.*;
    public class StringBufferDemoTest extends TestCase {
    StringBuffer a1 = new StringBuffer("StringBuffer");
    StringBuffer a2 = new StringBuffer("StringBufferStringBuffer");
    StringBuffer a3 = new StringBuffer("StringBuffer used by 20175312");
    @Test
    public void testCharAt() throws Exception//验证是否是整个字符串中的第x个字符
    {
    assertEquals('S',a1.charAt(0));
    assertEquals('t',a2.charAt(13));
    assertEquals('b',a3.charAt(18));
    }
    @Test
    public void testcapacity() throws Exception{//验证容量
    assertEquals(28,a1.capacity());
    assertEquals(40,a2.capacity());
    assertEquals(45,a3.capacity());
    }
    @Test
    public void testlength() throws Exception{//验证字符串的长度
    assertEquals(12,a1.length());
    assertEquals(24,a2.length());
    assertEquals(29,a3.length());
    }
    @Test
    public void testindexOf(){//验证位置
    assertEquals(6,a1.indexOf("Buff"));
    assertEquals(1,a2.indexOf("tring"));
    assertEquals(25,a3.indexOf("5312"));
    }
    public void StringTester() {
    String string="aa:30:3:5";
    String[] strings=string.split(":");
    assertEquals(':',string.charAt(2));
    assertEquals("30",strings[1]);
    }
    @Test
    public void ArraysTester() {
    int[] arr={1,2,5,4};
    Arrays.sort(arr);
    assertEquals(5,arr[3]);
    assertEquals(1,binarySearch(arr,2));
    }
    }
  • 程序设计中临时变量的使用

代码如下:


public class MyDoc {
public static void main(String[] args) {

    int arr[] = {1,2,3,4,5,6,7,8}; //定义一个数组


    for(int i:arr)//打印原始数组的值
    {
        System.out.print(i + " ");
    }
    System.out.println();


    int MyDoc = -1; // 添加代码删除上面数组中的5
    for(int i:arr){
        if(arr[i] == 5){
            MyDoc = i;
            break;
        }
    }

    for(int i=MyDoc+1;i<arr.length;i++){
        arr[i-1] = arr[i];
    }
    arr[arr.length-1] = 0;


    for(int i:arr)//打印出 1 2 3 4 6 7 8 0
    {
        System.out.print(i + " ");
    }

    System.out.println();


    for(int i:arr) // 添加代码再在4后面5
    {
        if(arr[i] == 4){
            MyDoc = i;
            break;
        }
    }

    for(int i=arr.length-1;i>MyDoc+1;i--){
        arr[i] = arr[i-1];
    }
    arr[MyDoc+1] = 5;


    for(int i:arr)//打印出 1 2 3 4 5 6 7 8
    {
        System.out.print(i + " ");
    }
    System.out.println();
}

}

代码托管

statistics.sh脚本的运行结果如图:

上周考试错题总结

  • 补充我上周在测试中的错题:

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 4000行 24篇 400小时
第一周 515/515 1/1 20/20
第二周 403/918 1/2 20/40
第三周 586/1504 1/3 20/60
第四周 575/2079 1/4 20/80
第五周 268/2347 1/5 20/100
第六周 871/3218 3/8 20/120
第七周 975/4193 2/10 20/140
第八周 1424/5617 1/11 20/160

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:20小时

  • 实际学习时间:20小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

猜你喜欢

转载自www.cnblogs.com/20175312-tgy/p/10745526.html