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

  • Keith Anthe

    Keith Anthe

    26 NİSAN 2011
  • lane182videos

    lane182video

    6 EKİM 2011
  • Ricardo Cerqueira

    Ricardo Cerq

    28 Mayıs 2008