美文网首页Android问题汇总(遥远的回忆过去)
Java-String[]与List的相互转换 - Androi

Java-String[]与List的相互转换 - Androi

作者: MonkeyLei | 来源:发表于2019-08-19 09:27 被阅读3次

    这两天做一个答题轮播,发生了点意外。这个轮播是用recycleview实现的,数据提交后获取数据采用的方式:点击下一步时获取当前holder数据,然后跳转到下一页,以此类推。然后就能再外面获取到数据了。 当然如果你没有下一步的说法,我觉得可能要考虑界面如何设计,如何实时捕捉当前页面数据的问题,比如输入框添加监听等方式。

    在获取数据的过程中出现一个list转string的错误,记录下:

        java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.String[]
        at com.lieyunwang.app.adapter.SmartMatchAdapter$ViewHolderThree.getData(SmartMatchAdapter.java:197)
        at com.lieyunwang.app.activity.SmartMatch.getData(SmartMatch.java:165)
        at com.lieyunwang.app.activity.SmartMatch.onClick(SmartMatch.java:117)
        at com.lieyunwang.app.app.BaseViewOnClickListener.onClick(BaseViewOnClickListener.java:24)
        at android.view.View.performClick(View.java:6312)
        at android.view.View$PerformClick.run(View.java:24811)
        at android.os.Handler.handleCallback(Handler.java:794)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:176)
        at android.app.ActivityThread.main(ActivityThread.java:6651)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:824)
    

    解决:

    String[]转List<String>

    String[] arr = new String[]{"a","b","c"};
    List<String> list = Arrays.asList(arr);
    List<String>转String[]

    List<String> list = new ArrayList<String>();
    list.add("a");
    list.add("b");
    list.add("c");
    String[] arr = list.toArray(new String[list.size()]);

    相关文章

      网友评论

        本文标题:Java-String[]与List的相互转换 - Androi

        本文链接:https://www.haomeiwen.com/subject/yoijsctx.html