SORU
22 NİSAN 2011, Cuma


Java Listesi.() Ekle UnsupportedOperationException

List<String> bir örnek nesneleri eklemek için çalışıyorum ama benim form sunduğumda bir hata mesajı var! Biri bana yardım edebilir mi?

Burada Java kodum :

String[] membersArray = request.getParameterValues('members');
List<String> membersList = Arrays.asList(membersArray);

for (String member : membersList) {
    Person person = Dao.findByName(member);
    List<String> seeAlso;
    seeAlso = person.getSeeAlso();
    if (!seeAlso.contains(groupDn)){
        seeAlso.add(groupDn);
        person.setSeeAlso(seeAlso);
    }
}

Burada hata iletisi:

 java.lang.UnsupportedOperationException
    java.util.AbstractList.add(Unknown Source)
    java.util.AbstractList.add(Unknown Source)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

CEVAP
22 NİSAN 2011, Cuma


List her uygulama add() yöntemi destekler.

Ortak bir örnek List Arrays.asList() tarafından verilir: belgelenmiştirdeğilherhangi bir yapısal değişiklik (çıkarma ya da ekleme elemanları gibi) (vurgu benim) destek için:

Döndürürsabit boyutluliste belirtilen dizi tarafından desteklenmektedir.

Eğer bunu değiştirmek için çalışıyoruz List belirli olsa bile, cevabım yine de değişmez olan List Diğer uygulamalar için de geçerlidir ya da sadece seçilmiş bazı değişikliklere izin vermek.

UnsupportedOperationException ve bu belgelerin hangi List.add() belgelerini okuyarak bu konuda bulabilirsiniz "(isteğe bağlı çalışma)". Bu cümlenin tam anlamını List belgeleri üst kısmında açıklanmıştır.

Geçici bir çözüm olarak ArrayList gibi bilinen değiştirilebilir bir uygulama için listenin bir kopyasını oluşturabilirsiniz:

seeAlso = new ArrayList<>(seeAlso);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Lancome USA

    Lancome USA

    30 HAZİRAN 2009
  • SerienTrailerMP

    SerienTraile

    7 HAZİRAN 2012
  • Visual Life

    Visual Life

    3 Temmuz 2006