android开发中子线程给全局变量无法赋值怎么解决~

简单点:
private JSONArray jsonArray;
new Thread(){
@Override
public void run()
{
这里有一段通过访问服务器获取JSONArray格式的返回值,我就不写了
jsonArray = JSON.parseArray(String.valueOf(buffer));
这里jsonArray报错,说不能给jsonArray赋值,有知道怎么解决的不?
}
}

子线程里不能进行赋值操作

private JSONArray jsonArray;
new Thread(){
@Override
public void run()
{
这里有一段通过访问服务器获取JSONArray格式的返回值,我就不写了
assignments(JSON.parseArray(String.valueOf(buffer)));
这里jsonArray报错,说不能给jsonArray赋值,有知道怎么解决的不?
}
}

//新建一个方法
private void assignments(JSONArray jsonArrays){

            runOnUiThread(new Runnable(){

               jsonArray=jsonArrays;

            }
            });

}

public class Test {
private ArrayList list;
public static void main(String s[]){
new Thread(){
@Override
public void run() {
list=new ArrayList();
}
}

}

}
你是这个意思吗?

亲,是可以赋值的。 应该是 JSON.parseArray这块出错了。 你能贴上具体的错误吗。

应该是转json时出错了,正常来说,一般都需要捕获一下异常

                         try {
                            JSONObject jo = new JSONObject(s);

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }