[英]How to remove an element from the two dimensional array in java
我有一個多維數組
private int numbers[][] ={{ 170, 100 },{ 270, 100 },{ 370, 100 },{ 470, 100 }}
現在我正在使用Collections.shuffle(Arrays.asList(numbers));
更改位置Collections.shuffle(Arrays.asList(numbers));
現在,我想從改組后的數組中刪除第一項,即如果第一項是{170,100}
,則必須從數組中刪除它。 為此,我試圖做這樣的事情
List<int[]> points =Arrays.asList(numbers);
Collections.shuffle(points);
points.remove(0);
但是它拋出了java.lang.UnsupportedOperationException
,有人可以幫我從二維日中刪除第一個元素。
使用以下代碼:
List<int[]> points =new ArrayList(Arrays.asList(numbers));
Collections.shuffle(points);
points.remove(0);
怎么樣
List<int[]> points = new ArrayList(Arrays.asList(numbers));
問題是Arrays.asList返回一個在Arrays類中私下聲明的List。
private static class ArrayList<E> extends AbstractList<E>
implements RandomAccess, java.io.Serializable
並且不執行修改操作,因此
public E remove(int index) {
throw new UnsupportedOperationException();
}
從它的超類AbstractList。
如Reimeus所建議:將其包裝到java.util.ArrayList或LinkedList中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.