java - 无法将字符串转换为整数

标签 java android

我知道以前有人问过这个问题......我也是 Java 和 Android 的新手。

我的一位 friend 正在开发一个应用程序,他正在使用 MPAndroidChartLibrary。

该代码在本地服务器上运行良好。不是来自公共(public)服务器。

这是代码

 private List<BarDataSet> getDataSet() {
    List<BarDataSet> dataSets;
    List<BarEntry> resolvedBarEntries = new ArrayList<BarEntry>();
    List<Integer> listKey = Lists.newArrayList(resolveSerMap.keySet());
    Collections.sort(listKey);
    for (Integer key : listKey) {
        BarEntry resolvedBar = new BarEntry(resolveSerMap.get(key), key);
        resolvedBarEntries.add(resolvedBar);
    }
    List<BarEntry> closedBarEntries = new ArrayList<BarEntry>();
    for (Integer key : listKey) {
        BarEntry closedBar = new BarEntry(closeSerMap.get(key), key);
        closedBarEntries.add(closedBar);
    }
    BarDataSet barDataSet1 = new BarDataSet(resolvedBarEntries,
            getResources().getString(R.string.Resolved));
    //barDataSet1.setColors(ColorTemplate.PASTEL_COLORS);

    BarDataSet barDataSet2 = new BarDataSet(closedBarEntries,
            getResources().getString(R.string.Closed));
    //barDataSet2.setColors(ColorTemplate.JOYFUL_COLORS);
    dataSets = new ArrayList<BarDataSet>();
    dataSets.add(barDataSet1);
    dataSets.add(barDataSet2);
    return dataSets;
}

这总是以异常结束 java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at com.example.user.getDataSet(Unknown Source) at com.example.user.promiseMethod(Unknown Source) at com.gaurage.util.RestUtil$3.onSuccess(Unknown Source) at com.a.a.a.h.handleMessage(Unknown Source) at com.a.a.a.i.handleMessage(Unknown Source) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4921) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794) at dalvik.system.NativeStart.main(Native Method)

请告诉我应该深入研究哪里。最初我从未遇到过此类错误。

最佳答案

我认为错误可能在于:

List<Integer> listKey = Lists.newArrayList(resolveSerMap.keySet());

键是整数吗?还是字符串?

关于java - 无法将字符串转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32325364/

相关文章:

java - android项目有红色x但代码没有错误

java - 如何将值从类传递到 Activity - Android

java - 如何使用 VersionOne JAVA SDK 中的 'WHERE'

android - 使用 bundle 从一个图的 fragment 导航到另一个图的 fragment

android - 带按钮的通知不处理事件

java - 如何从java代码调用外部dll函数

android - 如何从 Ubuntu 的终端在 Android Studio 中打开一个已经创建的项目?

java - 使用 Java 检查 MySQL 数据库中的用户是否已存在时出现错误

java - WebSocket 连接已建立,但客户端无法接收其他人的消息

java - 从命令行注入(inject) map