Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将字符串插入ArrayList_Java_Sorting_Indexing_Junit - Fatal编程技术网

Java 将字符串插入ArrayList

Java 将字符串插入ArrayList,java,sorting,indexing,junit,Java,Sorting,Indexing,Junit,我创建了两种方法将泛型数据插入ArrayList: public void add(T element) throws SortingException{ if(element == null) throw new SortingException("addElement: element can't be null"); int index = getIndexInsert(element); (this.array).add(index, elemen

我创建了两种方法将泛型数据插入ArrayList:

public void add(T element) throws SortingException{
    if(element == null)
      throw new SortingException("addElement: element can't be null");

    int index = getIndexInsert(element);

    (this.array).add(index, element);
  }



private int getIndexInsert(T element){
    int index = 0;
    boolean cont = true;
    T currEl = null;
    while((index<(this.array).size())&&cont){
           currEl = (this.array).get(index);
           if((this.comparator).compare(element, currEl)<0)
               cont = false;
           else index++;
        }//while

    return index;
  }
这是我的测试方法:

@Test
  public void testStringOrder() throws SortingException {
    String[] arrExpected = {"ciao","come","stai"};
    String[] arrActual = new String[3];
    arrayString.add("come");
    arrayString.add("ciao");
    arrayString.add("stai");
    arrayString=arrayString.insertionSort(0);
    for(int i=0;i<3;i++) {
      /*DEBUG:*/ System.out.println(arrayString.get(i));
      arrActual[i] = arrayString.get(i);
    }
    assertArrayEquals(arrExpected,arrActual);
  }
@测试
public void testStringOrder()引发排序异常{
字符串[]arexpected={“ciao”,“come”,“stai”};
字符串[]数组=新字符串[3];
arrayString.add(“come”);
排列。添加(“ciao”);
排列。添加(“stai”);
arrayString=arrayString.insertionSort(0);

对于(int i=0;我能告诉我们
arrayString
是在哪里初始化的吗?我添加了那个部分。在
createArrayOfString()
方法上,你可能还需要
@之前
。哦,天哪,谢谢,我完全忘了它。现在它工作了!
@Test
  public void testStringOrder() throws SortingException {
    String[] arrExpected = {"ciao","come","stai"};
    String[] arrActual = new String[3];
    arrayString.add("come");
    arrayString.add("ciao");
    arrayString.add("stai");
    arrayString=arrayString.insertionSort(0);
    for(int i=0;i<3;i++) {
      /*DEBUG:*/ System.out.println(arrayString.get(i));
      arrActual[i] = arrayString.get(i);
    }
    assertArrayEquals(arrExpected,arrActual);
  }
  private Sorting<Integer> arrayInteger;
  private Sorting<String> arrayString;

  @Before
  public void createArrayOfInteger(){
    arrayInteger = new Sorting<>(new IntegerComparator());
  }

  public void createArrayOfString(){
    arrayString = new Sorting<>(new StringComparator());
  }