Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Java HashMap错误:Java.lang.ClassCastException:Java.lang.Integer无法转换为Java.lang.String_Android_Json_Multithreading_Sqlite - Fatal编程技术网

Android Java HashMap错误:Java.lang.ClassCastException:Java.lang.Integer无法转换为Java.lang.String

Android Java HashMap错误:Java.lang.ClassCastException:Java.lang.Integer无法转换为Java.lang.String,android,json,multithreading,sqlite,Android,Json,Multithreading,Sqlite,我正在从JSONArray获取HashMap并将其发送到SQLite。它给了我: java.lang.ClassCastException:java.lang.Integer不能转换为java.lang.String。HashMap转换问题。 类型为HashMap 以下是Logcat: 03-13 09:05:23.034 18810-18866/?W/System.err: java.lang.ClassCastException:无法将java.lang.Integer转换为 java.la

我正在从JSONArray获取HashMap并将其发送到SQLite。它给了我:
java.lang.ClassCastException:java.lang.Integer不能转换为java.lang.String。HashMap转换问题。

类型为HashMap

以下是Logcat:

03-13 09:05:23.034 18810-18866/?W/System.err: java.lang.ClassCastException:无法将java.lang.Integer转换为 java.lang.String 03-13 09:05:23.034 18810-18866/?W/System.err:at com.example.SQLITEDatabase.DatabaseHandle.InserBusinessInfo(DatabaseHandle.java:143) 03-13 09:05:23.042 18810-18866/? W/System.err:at com.example.deals.NewUserDetailPage$fetchAdvertisions.doInBackground(NewUserDetailPage.java:283) 03-13 09:05:23.042 18810-18866/? W/System.err:at com.example.deals.NewUserDetailPage$fetchAdvertisions.doInBackground(NewUserDetailPage.java:255) 03-13 09:05:23.046 18810-18866/? W/System.err:at android.os.AsyncTask$2.call(AsyncTask.java:287)03-13 09:05:23.062 18810-18866/? W/System.err:at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 03-13 09:05:23.062 18810-18866/? W/System.err:at java.util.concurrent.FutureTask.run(FutureTask.java:137)03-13 09:05:23.066 18810-18866/? W/System.err:at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)03-13 09:05:23.070 18810-18866/? W/System.err:at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 03-13 09:05:23.070 18810-18866/? W/System.err:at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 03-13 09:05:23.086 18810-18866/? W/System.err:at java.lang.Thread.run(Thread.java:856)03-13 09:05:23.138 18810-18866/? W/System.err:java.lang.RuntimeException:无法在内部创建处理程序 未调用活套的线程。准备()03-13 09:05:23.170 18810-18866/? W/System.err:at android.os.Handler.(Handler.java:121)03-13 09:05:23.170 18810-18866/? W/System.err:at android.widget.Toast$TN.(Toast.java:322)03-13 09:05:23.174 18810-18866/? W/System.err:at android.widget.Toast.(Toast.java:91)03-13 09:05:23.186 18810-18866/? W/System.err:at android.widget.Toast.makeText(Toast.java:238)03-13 09:05:23.186 18810-18866/? W/System.err:at com.example.deals.NewUserDetailPage$fetchAdvertisions.doInBackground(NewUserDetailPage.java:285) 03-13 09:05:23.194 18810-18866/? W/System.err:at com.example.deals.NewUserDetailPage$fetchAdvertisions.doInBackground(NewUserDetailPage.java:255) 03-13 09:05:23.206 18810-18866/? W/System.err:at android.os.AsyncTask$2.call(AsyncTask.java:287)03-13 09:05:23.214 18810-18866/? W/System.err:at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 03-13 09:05:23.218 18810-18866/? W/System.err:at java.util.concurrent.FutureTask.run(FutureTask.java:137)03-13 09:05:23.222 18810-18866/? W/System.err:at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)03-13 09:05:23.254 18810-18866/? W/System.err:at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 03-13 09:05:23.274 18810-18866/? W/System.err:at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 03-13 09:05:23.282 18810-18866/? W/System.err:at java.lang.Thread.run(Thread.java:856)03-13 09:05:23.454 320-320/? W/InputMethodManagerService:窗口已聚焦,忽略聚焦 收益: com.android.internal.view.IInputMethodClient$Stub$Proxy@535c3eec 属性=空


您可以自由地将
Hashmap
转换为
String
,完全没有冒犯之意。但您正在做的是,您有一个名为
mapReceivedAdDetails
的映射,并且您正在尝试转换另一个未在snippet
mapReceivedAd
中显示的变量

这样做而不是这样做

mapReceivedAd.toString();
Do

mapReceivedAdDetails.toString();

代码中的错误发生在哪里?发布整个堆栈跟踪。嗨,Sree krishna,谢谢你查看它。我正在做HashMap.toString();只是看看存储了哪些值。我的挑战如下,转换它。我首先将它从Int中提取出来存储在字符串HashMap中,然后在插入SQLite时将其转换回Int,insert.bindLong(1,Integer.parseInt(mapbusinesinfo.get(I.get)(“BusUserId”);insert.bindLong(2,Integer.parseInt(mapBusinessInfo.get(i.get)(“BusinessId”));使用
String.valueOf(integer)
integer
转换回
String
。你可能在做别的事情,它正在工作。在从JSONArray获取值时。将其更改为obj.get(“business_Id”),而不是obj.getInt(“business_Id”)。所以用get代替getInt。
insert.bindLong(1, Integer.parseInt(mapBusinessInfo.get(i).get("BusUserId")));
mapReceivedAd.toString();
mapReceivedAdDetails.toString();