簡體   English   中英

Arraylist中的移位元素

[英]Shifting element in Arraylist

我有一個arraylist。如果列表中存在第一個索引,我想將其放置到第一個索引中。 為此,我要遍歷該列表並進行檢查。如果假設我在列表中找到元素A,例如在索引2處,我將把該元素添加到第一個索引中。 這樣,將添加該元素,並且列表將向下移動。 但是,問題是這將創建重復元素。

因此,我的要求是將特定列表元素添加到第一個索引。 我怎樣才能有效地做到這一點。

交換列表的兩個元素:

public static void main( String[] args )
  {
    String elementToSwap = "2";
    List<String> list = new ArrayList<String>();
    list.add( "1" );
    list.add( "2" );
    list.add( "3" );
    int index = list.indexOf( elementToSearch );
    if ( index >= 0 ) {
      String temp = list.get( 0 );
      list.set( 0, elementToSearch );
      list.set( index, temp );
    }
    System.out.println( list );
  }

為什么不交換值呢? 假設您正在尋找值“ 2”。 您在索引4中找到“ 2” ...只需將索引4的值與索引0的值交換(第一項)。 您將在第一個插槽中添加“ 2”,而不添加任何重復項。

public void shift(List list, int index){
    list.add(0, list.remove(index))
}

這將刪除給定index處的元素,並將其放在列表的開頭。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM