《Java程序设计》第12周课堂实践总结

《Java程序设计》第12周课堂实践总结

实践一 教材代码检查-p98

要求

修改教材P98 Score2.java, 让执行结果数组填充是自己的学号;
提交在IDEA或命令行中运行结查截图,加上学号水印,没学号的不给成绩

代码

import java.util.Arrays;
public class Score2 {
    public static void main(String[] args) {
        int[] scores=new int[10];
        for(int score:scores){
            System.out.printf("%2d",score);
        }
        System.out.println();
        Arrays.fill(scores,20155314);
        for(int score:scores){
            System.out.printf("%3d ",score);
        }
    }
}

运行结果截图

实践二 Arrays和String单元测试

要求

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

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

  • String类

    • charAt
    • split
  • Arrays类

  • sort

  • binarySearch

  • 提交运行结果截图和码云代码链接,截图没有水印的需要单独找老师验收才有成绩

代码

import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class Test20155314 {
    @Test
    public void testString() {
        String s ="abc";
        assertEquals('b',s.charAt(1));
    }
}

运行结果截图

实践三 MySort

要求

模拟实现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 Mysort20155314 {
	    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"};
	/*****************以下为添加内容********************/
	        String[] tmp=new String[toSort.length];
	        
	        for(int i=0;i<toSort.length;i++)
	        {
	            String list[]=toSort[i].split(":");
	            tmp[i]=list[3];
	        }
	/**************************************************/
	        System.out.println("Before sort:");
	        for (String str : toSort)
	            System.out.println(str);
	
	        Arrays.sort(tmp);
	/*****************以下为添加内容********************/
	        String []t=new String[toSort.length];
	        for(int i=0;i<toSort.length;i++)
	            for(int j=0;j<toSort.length;j++)
	                if(toSort[j].charAt(9)==(tmp[i].toCharArray()[0]))
	                    t[i]=toSort[j];
	/**************************************************/
	        System.out.println("After sort:");
	        for (String str : t)
	            System.out.println(str);
	    }
	}

###运行结果截图
![](http://i4.buimg.com/1949/fe5f118d5bb1f7d8.png)

##代码调试过程中出现的问题及解决
###(1)关于输出toSort[1].split(":")出现乱码的问题
![](http://i4.buimg.com/1949/81e420250085ac99.png)
###(2)关于Android Studio安装过程中报错的问题
![](http://i1.piimg.com/1949/af2988305eea19a5.png)
####解决如下:
![](http://i1.piimg.com/1949/f733633d77f8d7db.png)
![](http://i1.piimg.com/1949/acb121a81fde12f1.png)
![](http://i1.piimg.com/1949/e2135795cc5e01e2.png)

## 参考资料
- [Java String.split()用法小结](http://www.cnblogs.com/mingforyou/archive/2013/09/03/3299569.html)
- [电脑提示installer integrity check has failed的解决方法](http://www.jb51.net/hardware/zonghe/186355.html)
- [Android开发简易教程 - 娄老师 - 博客园](http://www.cnblogs.com/rocedu/p/6824965.html)
原文地址:https://www.cnblogs.com/crazymosquito/p/6841867.html