2011-03-03 49 views
3

我有一个问题,当我创建一个字符串数组,这只发生在2.1 android api级别7或更低,我需要安装应用程序在设备上完全是这样的配置,任何想法如何解决问题? 在源代码下面,屏幕上弹出的消息以及logcat的消息。异常处理异步线程队列java.lang.UnsupportedOperationException

CODE:



private String[] fillPedidosName() { 
    TipoPedidoDAO tipoDAO = null; 
    try { 
     tipoDAO = new TipoPedidoDAO(); 
     pedidosList = tipoDAO.selectAll(); 
      String[] temp = new String[pedidosList.size()]; 
     for (int i = 0; i < pedidosList.size(); i++) { 
      if (pedidosList.get(i) != null) { 
       temp[i] = pedidosList.get(i).getDescricao().toString(); 
      } 
     } 
     return temp; 
    } catch (Exception ex) { 
     MyLoger.logar(ex); 
     return null; 
    } finally { 
     if (tipoDAO.getDB().isOpen()) { 
      tipoDAO.closeConnection(); 
     } 
    } 
} 

弹出调试运行消息:

异常处理异步线程队列 异常处理异步线程队列 java.lang.UnsupportedOperationException

logcat的'S MESSAGE:

03-03 17:57:57.124:ERROR/jdwp(1267):REQ:UNSUPPORTED (cmd = 2/11 dataLen = 8 id = 0x0012ba)

+0

记得标记答案是正确的;它鼓励人们在未来回答你。 – 2011-03-03 18:26:15

回答

0

您可能没有使用支持get(int)的List。

尝试将List实现更改为ArrayList。当您创建列表:

List myList = new ArrayList()

这可能是发生内部tipDAO.selectAll()

+0

感谢马修,但那不是问题,我切换到ArrayList,仍然是一样的,问题是当我实例化一个新的字符串(String [] temp = new String [pedidosList.size()];),非常奇怪.. 。 – cristianchiess 2011-03-04 11:22:48

+0

它可能有助于显示您的.selectAll()代码和更多关于pedidosList的信息。 – 2011-03-04 15:18:31

+0

Matthew在评论get(i)和.selectAll()时做了一些测试,.selectAll()返回了一个Citie名称的ArrayList,用于用户选择名称来创建购买,其中我添加了两个字符串“选择一个城市”和“所有城市”,我不知道为什么,当我删除这两个字符串一切工作正常... 如果你没有评论我会浪费太多时间解决这个问题。 谢谢你马修... – cristianchiess 2011-03-04 19:18:22

0

我有这个问题。我弄明白了。 使用对象的数组时,确保已在对象文件中定义了构造函数。

这段代码被创建错误

List<Prediction> predictions = new ArrayList<Prediction>(); 

的修复。 预测类文件缺少构造函数。放入默认构造函数后,错误消失了。

package com.thuptencho.torontotransitbus.models;

public class Prediction { 
    public String epochTime = "", seconds = "", minutes = "", isDeparture = "", affectedByLayover = "", branch = "", 
      dirTag = "", vehicle = "", block = "", tripTag = ""; 
    //this constructor was missing..after coding this constructor. the error was gone. 
    public Prediction(){ 
     super(); 
    } 
    @Override 
    public String toString() { 
     return "epochTime:" + this.epochTime + " seconds:" + this.seconds + " minutes:" + this.minutes 
       + " isDeparture:" + this.isDeparture + " affectedByLayover:" + this.affectedByLayover + " branch:" 
       + this.branch + " dirTag:" + this.dirTag + " vehicle:" + this.vehicle + " block:" + this.block 
       + " triptag:" + this.tripTag; 
    } 
} 
+0

为什么构造函数很重要? – JohnyTex 2016-02-05 16:42:37