坑不要使用各种框架提供的内部List
Posted z00377750
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了坑不要使用各种框架提供的内部List相关的知识,希望对你有一定的参考价值。
为了代码简洁有时我们会使用一些框架提供的工具类。如
import org.apache.commons.collections.ListUtils;
package java.util.Collections;
List<String> strList = ListUtils.EMPTY_LIST;
List<String> strList1 = Collections.emptyList();
实际该空List是个内部类,没有实现add等方法,使用时会报错。
/**
* {@inheritDoc}
*
* <p>This implementation always throws an
* {@code UnsupportedOperationException}.
*
* @throws UnsupportedOperationException {@inheritDoc}
* @throws ClassCastException {@inheritDoc}
* @throws NullPointerException {@inheritDoc}
* @throws IllegalArgumentException {@inheritDoc}
* @throws IndexOutOfBoundsException {@inheritDoc}
*/
public void add(int index, E element) {
throw new UnsupportedOperationException();
}
又如,使用
arrays.aslist(T...a)
再进行add操作,同样会报该错。
https://www.2cto.com/kf/201806/751606.html
因此,还是老老实实使用下面方式初始化List
List<String> strList=new ArrayList<>();
或者确认工具类提供的是java的ArrayList再使用。
以上是关于坑不要使用各种框架提供的内部List的主要内容,如果未能解决你的问题,请参考以下文章
使用 Flask 框架写用户登录功能的Demo时碰到的各种坑——对 run.py 的调整
使用 Flask 框架写用户登录功能的Demo时碰到的各种坑——使用Flask-Login库实现登录功能
使用 Flask 框架写用户登录功能的Demo时碰到的各种坑——创建应用