Arrays和String单元测试

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

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

    • String类

      • charAt
      • split
    • Arrays类
      • sort
      • binarySearch
  • 码云链接
  • 代码
/**
* Created by radish608 on 17-5-10.
*/
import java.util.*;
import org.junit.Test; import static java.util.Arrays.binarySearch; public class SAtest { String teststring1 = "Hello World!";
String teststring2 = " "; String teststring3 = "boo:and:foo";
String[] teststring4 = new String[3];
String[] teststring5 = new String[3]; @Test
public void StringTester() {
assert teststring1.charAt(0) == 'H' : "error1:charAt";
assert teststring1.charAt(teststring1.length()-1) == '!' : "error2:charAt";
assert teststring2.charAt(0) == teststring2.charAt(teststring2.length()-1) : "error3:charAt"; teststring4 = teststring3.split(":");
teststring5 = teststring3.split("o"); assert teststring4[0].equals("boo") : "error4:split";
assert teststring4[1].equals("and") : "error5:split";
assert teststring4[2].equals("foo"): "error6:split"; assert teststring5[0].equals("b") : "error7:split";
assert teststring5[1].equals("") : "error8:split";
assert teststring5[2].equals(":and:f") : "error9:split"; } @Test
public void ArraysTester() {
int []testarr1 = { 1, 3, 5, 4, 2, 0};
int []testarr2 = {2, 5, 7, 8, 9, 0, 10, 11, 13, 15, 19}; Arrays.sort(testarr1);
assert testarr1[1] == 1 : "error10:sort"; assert binarySearch(testarr2, 0, testarr2.length-1, 5) == 1 : "error11:binarySearch"; } }
  • 截图

MySort

模拟实现Linux下Sort -t : -k 2的功能。参考 Sort的实现。提交码云链接和代码运行截图。

/**
* Created by radish608 on 17-5-10.
*/
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); System.out.println("After sort:");
int[] tmp = new int[toSort.length];
String[][] string = new String [toSort.length][4];
for (int i = 0; i < toSort.length; i++) {
string[i] = toSort[i].split(":");
tmp[i] = Integer.parseInt(string[i][1]);
}
Arrays.sort(tmp);
for (int i = 0; i < tmp.length; i++) {
for (int j = 0; j < toSort.length; j++) {
if(tmp[i] == Integer.parseInt(string[j][1])){
System.out.println(toSort[j]);
}
}
}
}
}
  • 截图

20155212Arrays和String测试_MySort的更多相关文章

  1. Array和String测试与java.String.split

    java.string.split() 存在于java.lang包中,返回值是一个数组. 作用是按指定字符或者正则去切割某个字符串,结果以字符串数组形式返回. 例 String [] toSort = ...

  2. 6-3 bash脚本编程之五 字符串测试及for循环

    1. 字符测试 ==:等号两边要有空格,否则会被认为是赋值. !=:  测试是否相等,记住如果不等为真,等为假. -n string: 测试指定字符串是否为空,空位真,不空为假. -s string: ...

  3. sysbench 压力测试

    200 ? "200px" : this.width)!important;} --> 介绍 sysbench是一个模块化.跨平台.多线程基准测试工具,主要用于测试不同系统参 ...

  4. python string

    string比较连接 >>> s1="python string" >>> len(s) 13 >>> s2=" p ...

  5. sysbench压力测试工具简介和使用(一)

    sysbench压力测试工具安装和参数介绍 一.sysbench压力测试工具简介: sysbench是一个开源的.模块化的.跨平台的多线程性能测试工具,可以用来进行CPU.内存.磁盘I/O.线程.数据 ...

  6. 使用sysbench进行压力测试

    sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试.数据库目前支持MySQL/Oracle/PostgreSQL/Drizzle,它主要包括以下几 ...

  7. [置顶] String StringBuffer StringBuilder的区别剖析

    这是一道很常见的面试题目,至少我遇到过String/StringBuffer/StringBuilder的区别:String是不可变的对象(final)类型,每一次对String对象的更改均是生成一个 ...

  8. linux基础11-bash编程(字符串测试 和 for循环)

    练习:传递一个用户名参数给脚本,判断此用户的用户名跟其基本组的组名是否一致,并将结果显示出来.(1)字符测试:==:测试是否相等,相等为真,不等为假!=: 测试是否不等,不等为真,等为假>< ...

  9. 20175225 《Arrays和String单元测试》

    ---恢复内容开始--- 题目 在IDEA中以TDD的方式对String类和Arrays类进行学习,测试相关方法的正常,错误和边界情况 - String类 - charAt - split - Arr ...

随机推荐

  1. Odoo中的逆计算——由compute字段的值逆向修改其依赖值

    转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/9281406.html 当通过compute属性指定方法,根据依赖值计算得到当前字段值时.一般也要制定这个计算的 ...

  2. 【CSS】iconfont的使用

    说到浏览器对@font-face的兼容问题,这里涉及到一个字体format的问题,因为不同的浏览器对字体格式支持是不一致的,这样大家有必要了解一下,各种版本的浏览器支持什么样的字体,前面也简单带到了有 ...

  3. linq的左连接右连接内连接用法

    1.左连接: var LeftJoin = from e in ListOfEmployees join d in ListOfDepartment on e.DeptID equals d.ID i ...

  4. PHP扩展模块redis安装

    PHP扩展redis模块安装 当我们安装好php之后可能会忘记装一些模块,或者需要增加模块的时候我们可以使用扩展模块安装. 查看php加载了哪些模块,使用命令 /usr/local/php/bin/p ...

  5. PAT——1062. 最简分数

    一个分数一般写成两个整数相除的形式:N/M,其中M不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1/M1 和 N2/M2,要求你按从小到大的顺序列出它们之间分母 ...

  6. Android-应用性能测试

    参考了文章:http://www.cnblogs.com/mliangchen/p/5125114.html 问题一:使用真机在DDMS下,查看不到应用进程,logcat也不全 最后,只能使用Geny ...

  7. 奇妙的CSS3—导航栏下划线跟随效果

    先来看一下效果: 1.基本效果就是这样的 ,鼠标悬停,下划线划入.鼠标离开,下划线划出 2.下划线的划入是有方向的,从左侧划入悬停,下划线由左向右伸长.从右侧划入,下划线由又往左伸长 实现思路 1.导 ...

  8. CSS网页布局:盒子模型

    一.盒子模型 标准盒子模型(W3C盒子) 不论是标准盒模型还是IE盒子模型,都有content.padding.border.margin四个部分组成,但从上图也可以看出W3C盒子和IE盒子主要区别在 ...

  9. ODI使用流程

    ---恢复内容开始--- ODI流程 Topology 1.建立 源 物理结构体系 2.建立 目的 物理结构体系 步骤同上 3.建立 源 逻辑架构 4.建立 目的 逻辑架构 步骤同上 Designer ...

  10. oracle json 解析函数

    CREATE OR REPLACE TYPE ty_tbl_str_split IS TABLE OF ty_row_str_split;CREATE OR REPLACE TYPE ty_row_s ...