20155339《java程序设计》第十二周课堂实践总结
2017-05-13 16:05
316 查看
Arrays和String单元测试
在IDEA中以TDD的方式对String类和Arrays类进行学习
测试相关方法的正常,错误和边界情况String类
charAt
split
Arrays类
sort
binarySearch
代码的码云链接
核心部分代码及注释@Test public void Arraytest() { int a[]={8,5,4,7}; Arrays.sort(a);//对字符数组进行排序,并返回到原数组中 this.assertEquals(8,a[3]);//排序后应为4,5,7,8,因此a[3]应为8. this.assertEquals(0,Arrays.binarySearch(a,4));//用二分法进行搜索,并返回数组中的下标 this.assertEquals(-2,Arrays.binarySearch(a,6));//若没有则返回-1,或者-按升序应该插入的位置 } @Test public void Stringtest() { String e = new String("2015,5339,pczm"); assertEquals('2',e.charAt(0));//返回所指定下标(此处为0)所对应的元素 assertEquals('4',e.charAt(0)); String[] s=e.split(",");//用“,”进行分割 assertEquals("5339",s[1]); }
运行结果截图
模拟实现Linux下Sort -t : -k 2的功能。参考 Sort的实现。提交码云链接和代码运行截图。
1 import java.util.*; 2 3 public class MySort1 { 4 public static void main(String [] args) { 5 String [] toSort = {"aaa:10:1:1", 6 "ccc:30:3:4", 7 "bbb:50:4:5", 8 "ddd:20:5:3", 9 "eee:40:2:20"}; 10 11 System.out.println("Before sort:"); 12 for (String str: toSort) 13 System.out.println(str); 14 15 Arrays.sort(toSort); 16 17 System.out.println("After sort:"); 18 for( String str : toSort) 19 System.out.println(str); 20 } 21 }
代码的码云链接
代码及注释import java.util.*; public class MySort1 { public static void main(String[] args) { String[] toSort = {"aaa:10:1:1", "ccc:30:3:4", "bbb:50:4:5", "ddd:20:5:3", "eee:40:2:20"}; System.out.println("Before sort:"); for (String str : toSort) System.out.println(str); Arrays.sort(toSort); System.out.println("After sort:"); for (String str : toSort) System.out.println(str); System.out.println(); int[] tmp=new int [toSort.length];//定义一个与tosort数组的行数相同的数组。 for(int i=0;i<toSort.length;i++) { String[] a = toSort[i].split(":");//每行都用:分割并将分割后的结果存放于a数组中。 tmp[i] = Integer.parseInt(a[3]);//取出需要按哪一列排序的那一列,此处由题意取出第三列并将字符串剖析为int型 } Arrays.sort(tmp);//取出的一列排序 for(int i=0;i<tmp.length;i++)//遍历tmp数组 { for(int j=0;j<toSort.length;j++)//遍历toSort数组的行 { String[] a = toSort[j].split(":");//按行用:分割toSort数组,存于a数组 if(tmp[i]==Integer.parseInt(a[3]))//比较已排序的tmp数组以及a数组剖析后的结果 { System.out.println(toSort[j]);//相同时输出原数组,因为tmp数组以按指定列排序,所以完成整个数组按指定列排序 } } } } }
结果截图
课堂上未能提交的原因
首先是掌握的还不够透彻,对于代码的编写还需要有个较长的思考时间。其次一直在切换网页还有加水印还要上复制到项目文件夹传到码云,一紧张,手抖老是点到别的地方,再点回去打开就比较慢,每次编出来加水印就已经停止了,有点来不及。
相关文章推荐
- 《Java程序设计》第15周课堂实践总结
- 20155320 2016-2017-2《Java程序设计》第十二周课堂实践项目
- 《Java程序设计》课堂实践内容总结
- 《Java程序设计》第12周课堂实践总结
- 20155233 《Java程序设计》第十二周课堂练习总结
- 201521123096《Java程序设计》第十二周学习总结
- # 20155219课堂实践--第十二周
- 20155339 2016-2017-2 《Java程序设计》第7周学习总结
- 20155339 2016-2017-2 《Java程序设计》第8周学习总结
- 20155339 2016-2017-2 《Java程序设计》第3周学习总结
- 201521123072《java程序设计》第十二周学习总结
- 20155227第十二周课堂实践
- 20135203齐岳 信息安全系统设计基础第十二周实践总结
- 201521123005 《Java程序设计》 第十二周学习总结
- 20155326 第12周课堂实践总结(二)String类和Arrays类的学习
- 20155326 第12周课堂实践总结(一)
- 20155339 2016-2017 2 《Java程序设计》第2周学习总结
- 20155339 2016-2017-2 《Java程序设计》第1周学习总结
- 20155339 2016-2017-2 《Java程序设计》第十周学习总结
- 20155336 第十二周课堂总结 20155336虎光元