郝博雅

导航

20155205 《Java程序设计》0510课上实践博客

20155205 《Java程序设计》0510课上实践博客

一、教材代码检查-p98

未提交成功原因: 一开始在iterm中运行,但是结果出错,没有时间提交了。这个提交其实很简单,没有提交成功也是我自己当初没有好好调试的过。

二、Arrays和String单元测试

在IDEA中以TDD的方式对String类和Arrays类进行学习

  • 测试相关方法的正常,错误和边界情况

  • String类

    • charAt
    • split
  • Arrays类

    • sort
    • binarySearch
  • 码云链接

分析: 参考API中binary search的功能

三、MySort

  • 模拟实现Linux下Sort -t : -k 2的功能。参考 Sort的实现。

  • 码云链接

分析:将tosort用spilt分开后会有四个数组,所以要在后面说明将第几个值赋予给tmp数组。这里学习到一个spilt的用法:

也可以把tmp定义为二维数组来接受tosort的赋值。

四、总结

  • 循环数组还可以用string的增强式for循环语法,更加简洁:
for(int[] row :cords)
        {
            for(int value :row)
            {
                System.out.printf("%2d",value);
            }
}
  • 调用方法时不能直接写!比如用binarySearch,一定要是Arrays.binarySearch()!课上写代码时因为这个错误浪费了很多时间!

  • 数组的初始化(以下三种方式都可以)

String[] str = new String[5]; //创建一个长度为5的String(字符串)型的一维数组
String[] str = new String[]{"","","","",""};
String[] str = {"","","","",""};
  • binarySearch方法查找不到时返回 (-(插入点) - 1)是什么意思?

自己动手敲了一下代码就懂了,意思就是如果找不到,就返回插入点为负再减一。

  • 学习到了如何将测试代码写的整洁整齐。之前都是写一个测试类,需要什么变量定义什么变量,现在学会了先把这些变量定义到最前面。

posted on 2017-05-11 11:03  郝博雅  阅读(184)  评论(5编辑  收藏  举报