首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

项目中用了Arrays.asList、ArrayList的subList,被公开批评

1.2 原因分析 带着这个疑问,我们看下Arrays类提供的静态方法asList的源码: 返回的是ArrayList,很熟悉,有木有,但是再细心一看,就会发现此ArrayList并不是我们经常使用的ArrayList...,因为我们平时经常使用的ArrayList是位于java.util包下的: 但是此处的ArrayList却是Arrays类的内部类: 它也继承了AbstractList类,重写了很多方法,比如我们上面使用的...所以大家使用Arrays.asList时还是要注意下,避免踩坑。...1.3 总结 Arrays.asList方法可以一些简单的场合使用,比如快速声明一个集合,判断某个值是否允许的范围内: 但声明后不要再调用add等方法修改集合,否则会报java.lang.UnsupportedOperationException...注意事项:以上异常并不是添加元素时发生的,而是添加元素后,遍历子集合时发生的。

36940
您找到你想要的搜索结果了吗?
是的
没有找到

项目中用了Arrays.asList、ArrayList的subList,被公开批评

图片 返回的是ArrayList,很熟悉,有木有,但是再细心一看,就会发现此ArrayList并不是我们经常使用的ArrayList,因为我们平时经常使用的ArrayList是位于java.util包下的...图片 所以大家使用Arrays.asList时还是要注意下,避免踩坑。...1.3 总结 Arrays.asList方法可以一些简单的场合使用,比如快速声明一个集合,判断某个值是否允许的范围内: ?...“ 注意事项:以上异常并不是添加元素时发生的,而是添加元素后,遍历子集合时发生的。 ” 关于这一点,《阿里巴巴Java开发手册》泰山版中是这样描述的: ?...画外音 大家定义方法的时候,如果返回值类型是 List 的话,一定要去思考是否允许修改 ! 如果不允许,方法的注释上,一定要说明清楚这个事儿。

32840

Android面试心得必备技能储备详解,已拿到offer

2.HashMap是非线程安全,HashMap实现线程安全方法为Map map = Collections.synchronziedMap(new HashMap());Hashtable是线程安全 3...一般双重校验锁中用到volatile,需要分析volatile的原理 2.观察者模式:要求会手写,有些面试官会问你项目中用到了吗?...2.ArrayList和LinkedList对比,这个相对简单一点。 3.平衡二叉树、二叉查找树、红黑树,这几个我也被考到。...一、网络框架库 Okhttp okhttp源码一定要去看下,里面几个关键的类要记住,还有连接池,拦截器都需要理解。...代替EventBus的方法(RxBus) 三、图片加载库(Fresco、Glide、Picasso) 1.项目中选择了哪个图片加载库?为什么选择它?其他库不好吗?

1.1K30

Retrofit+OKHttp 教你怎么持久化管理Cookie

https://blog.csdn.net/lyhhj/article/details/51345386 绪论 最近小编有点忙啊,项目比较紧,所以一直忙活项目,继之前的自定义组件之后就没再写博客了...首先说一下需求,后台大哥哥是这样告诉我的:我们的用户登录需要你本地管理cookie,用户下次进来的时候不需要再登录,调用其他接口的时候将用户的cookie和session放到请求头里面。...因为Retrofit内部是Ok来实现的,所以方向可以找到Ok管理Cookie,好了,方向找到了,我们来看一下OKHttpOKHttp3.0之前和之后有很大的改动: 3.0之前: private...Map> headers = OkHeaders.toMultimap(result.build().headers(), null); Map> headers = Collections.emptyMap(); Map> cookieHeaders

1K30

Retrofit OKHttp 教你怎么持久化管理Cookie

投稿作者:黄海杰 原文链接: http://blog.csdn.net/lyhhj/article/details/51345386 绪论 最近小编有点忙啊,项目比较紧,所以一直忙活项目,继之前的自定义组件之后就没再写博客了...首先说一下需求,后台大哥哥是这样告诉我的:我们的用户登录需要你本地管理cookie,用户下次进来的时候不需要再登录,调用其他接口的时候将用户的cookie和session放到请求头里面。...因为Retrofit内部是Ok来实现的,所以方向可以找到Ok管理Cookie,好了,方向找到了,我们来看一下OKHttpOKHttp3.0之前和之后有很大的改动: 3.0之前: private Request...Map> headers = OkHeaders.toMultimap(result.build().headers(), null); Map> headers = Collections.emptyMap(); Map> cookieHeaders

1.9K100

Retrofit2.0 实现图文(参数+图片)上传方法总结

最近项目里用到了类似图文上传的功能,以前都是封装OkHttp的文件上传功能,这次想换个姿势,想用Retrofit2.0实现这样的功能,本来以为挺简单的,没想到进入了深坑,连续调整了好几种姿势都报了同一个错...类型Map<String, RequestBody 中,Map第一个泛型String是服务器接收用于文件上传参数字段的Key,第二个泛型RequestBody是OkHttp3包装的上传参数字段的Value...Environment.getExternalStorageDirectory() + File.separator + "test1.jpg"; List<File fileList = new ArrayList...} 因为GsonConverterFactory.create()转换器的缘故,会将参数请求头的content-type值默认赋值application/json,如果没有进行这步转换操作,就可以OKHttp3...MultipartBody.Part filesToMultipartBodyParts(List<File files) { List<MultipartBody.Part parts = new ArrayList

2.5K41

spring-cloud-square源码速读(retrofit + okhttp篇)

篇) spring-cloud-square源码速读(retrofit + okhttp篇) 本篇概览 本文是《spring-cloud-square学习》系列的终篇,上一篇咱们了解了spring-cloud-square-okhttp...spring-cloud-square的retrofit + okhttp方案时,HelloService接口中使用的还是远程服务的服务名,而不是地址和端口,这是因为使用了spring-cloud-square-okhttp...$3$1 (java.util.stream) accept:175, ReferencePipeline$2$1 (java.util.stream) forEachRemaining:1384, ArrayList...RetrofitClientFactoryBean已经完成了实例化,接下来要去看HelloService接口背后的bean是怎么创建的 HelloService对应的bean是如何创建的 回顾一下,咱们的应用代码中用到...再回头看看咱应用consumer-retrofit-okhttp的pom.xml文件,如下图红框所示,和前文一样,这里也使用了spring-cloud-square-okhttp,而且咱们写的OkHttpClientConfig.java

28020

Retrofit解析2之使用简介

Header、@Headers、@Url (一)、方法注解: 1、@GET:用于发送一个get请求 @GET 注解一般必须添加相对路径或者绝对路径或者全路径,如果不想用在@GET 注解后添加请求路径,则可以方法的第一个参数中用...4、@DELETE:用于发送一个DELETE请求 @DELETE 注解 一般必须添加相对路径或者绝对路径或者全路径,如果不想在DELETE注解后添加请求路径,则可以方法的第一个参数中用@Url 注解添加请求路径...生成的数据形式一样;Query、QueryMap的数据体现在Url上;Field、FieldMap的数据是请求体 3、{占位符}和PATH尽量只用在URL的path部分,url的参数使用Query、QueryMap代替...首先效率高,其次Retrofit强大且配置灵活,第三和OkHttp无缝衔接,第四Jack Wharton主导的(你懂的)。 Retrofit2之前,OkHttp是一个可选的客户端。...2、okhttp3中: okhttp3.MultipartBody :multipart/form-data 的抽象封装,继承okhttp3.RequestBody okhttp3.MultipartBody.Part

4.6K30
领券