Android问题汇总(遥远的回忆过去)

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

2019-08-19  本文已影响3人  MonkeyLei

这两天做一个答题轮播,发生了点意外。这个轮播是用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()]);

上一篇 下一篇

猜你喜欢

热点阅读