---恢復內容開始---java
在IDEA中以TDD的方式對String類和Arrays類進行學習,測試相關方法的正常,錯誤和邊界狀況git
- String類 - charAt - split - Array類 - sort - binarySearch
(1).charAt
該方法返回位於字符串的指定索引處的字符,字符串的索引從零開始,其中index是指字符的索引,即下標。
測試代碼:數組
public class StringTest extends TestCase { String str1 = new String("Hello java"); String str2 = new String("你好,沙雕"); String s = new String("http://jwc.besti.edu.cn/ ni zhen sha diao"); @Test public void testcharAt() throws Exception { assertEquals('l', str1.charAt(3)); //正常狀況 assertEquals(' ', str1.charAt(5)); //正常狀況 assertEquals('好', str2.charAt(1)); //正常狀況 assertEquals(':', s.charAt(4)); //正常狀況 assertEquals('a', str1.charAt(9)); //邊界狀況 assertEquals('你', str2.charAt(0)); //邊界狀況 //assertEquals(' ',str1.charAt(-1)); //異常狀況 //assertEquals('哇',str2.charAt(5)); //異常狀況 }
(2).split
該方法是用於分隔字符串,獲得一個字符數組。
測試代碼:單元測試
public class StringTest extends TestCase { String str1 = new String("Hello java"); String str2 = new String("你好,沙雕"); String s = new String("http://jwc.besti.edu.cn/ ni zhen sha diao"); public void testsplit() throws Exception { assertEquals("http://jwc",s.split("[.]")[0]); //正常狀況 assertEquals("http://jwc.besti.edu.cn/",s.split(" ")[0]); //正常狀況 assertEquals("jwc.besti.edu.cn",s.split("/")[2]); //正常狀況 assertEquals("",s.split("\\p{Lower}")[0]); //邊界狀況 assertEquals("diao",s.split("\\s")[4]); //邊界狀況 assertEquals("jwc.besti.edu.cn",s.split("/")[1]); //異常狀況 assertEquals(" ",s.split(" ")[-1]); //異常狀況 } }
(1).sort
該方法用於數組排序,默認是升序排列,可是能夠經過修改compareTo中的返回值來變爲降序排列。
測試代碼學習
public class ArraysTest extends TestCase{ int a[] = {2,5,6,4,9,3}; char b[] = {'d','y','a','t','z','h'}; String s[] = {"1","8","4","0","7","3"}; @Test public void testsort() throws Exception { Arrays.sort(a); assertEquals("[2, 3, 4, 5, 6, 9]",Arrays.toString(a)); Arrays.sort(b,1,4); assertEquals("[d, a, t, y, z, h]",Arrays.toString(b)); assertEquals('t',b[2]); //assertEquals('a',b[0]); //異常狀況 Arrays.sort(s); assertEquals("[0, 1, 3, 4, 7, 8]",Arrays.toString(s)); } }
(2).binarySearch類
該方法使用二分搜索法來搜索指定的數組,以得到指定對象,返回要搜索元素的索引值
測試代碼測試
public class ArraysTest extends TestCase{ int a[] = {2,5,6,4,9,3}; @Test public void testbinarySearch() throws Exception { Arrays.sort(a); assertEquals(3,Arrays.binarySearch(a,5)); //assertEquals(-1,Arrays.binarySearch(a,10)); //異常狀況 //assertEquals(-2,Arrays.binarySearch(a,0)); //異常狀況 } }
charAt異常
3d
split異常
code
String測試經過截圖
對象
sort異常
blog
binarySearch異常
Arrays測試經過