当前位置: 首页 > news >正文

网站模板之家免费下载福州网红餐厅

网站模板之家免费下载,福州网红餐厅,网站建设对接流程,青岛网络有限公司1. 概述 列表是我们使用 Java 时常用的集合类型。 众所周知#xff0c;我们可以轻松地用一行初始化一个List。例如#xff0c;当我们想要初始化一个只有一个元素的List时#xff0c;我们可以使用Arrays.asList()方法或Collections.singletonList()方法。 在本文中#x… 1. 概述 列表是我们使用 Java 时常用的集合类型。 众所周知我们可以轻松地用一行初始化一个List。例如当我们想要初始化一个只有一个元素的List时我们可以使用Arrays.asList()方法或Collections.singletonList()方法。 在本文中我们将讨论这两种方法之间的差异。然后为了简单起见我们将使用单元测试断言来验证某些操作是否按预期运行。 2.Arrays.asList ()方法 Arrays.asList ()方法返回一个固定大小的列表。 任何结构更改都会引发UnsupportedOperationException例如向列表添加新元素或从列表中删除元素。现在让我们通过测试来检查一下 ListString arraysAsList Arrays.asList(ONE); Assert.assertThrows(新增Item,UnsupportedOperationException.class,() - arraysAsList.add(TWO) );如果我们运行一下测试就会通过。在上面的代码中我们使用Assertj 的异常断言来验证当我们尝试向列表添加新元素时是否抛出UnsupportedOperationException 。 即使我们不能对列表调用add()或remove()操作我们也可以使用set()方法更改列表中的元素 arraysAsList.set(0, A brand new string); assertThat(arraysAsList.get(0)).isEqualTo(A brand new string);这次我们使用新的String对象设置列表中的元素。如果我们执行测试它就会通过。 Arrays.asList()方法的数组和返回的列表之间的关系。 顾名思义该方法使数组作为 List工作。让我们了解“让数组像列表一样工作”意味着什么。 Arrays.asList ()方法返回一个List对象该对象由给定的 array 支持。也就是说该方法不会将数组中的元素复制到新的List对象。相反该方法提供给定数组的列表视图。因此我们对数组所做的任何更改都将在返回的列表中可见。同样对列表所做的更改也将在数组中可见 String[] theArray new String[] { ONE, TWO }; ListString theList Arrays.asList(theArray); //改变列表数组也会随之改变 theList.set(0, ONE [changed in list]); assertThat(theArray[0]).isEqualTo(ONE [changed in list]);//改变数组列表也会随之改变 theArray[1] TWO [changed in array]; assertThat(theList.get(1)).isEqualTo(TWO [changed in array]);测试通过。因此对于数组和返回的列表如果我们在一侧进行了一些更改则另一侧也会更改。 3. Collections.singletonList()方法 singletonList()方法返回的列表只有一个元素。 与Arrays.asList()方法不同singletonList()返回一个不可变的 list。 换句话说不允许对singletonList() 返回的列表进行结构性和非结构性更改。一个测试可以快速说明这一点 ListString singletonList Collections.singletonList(ONE); assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(() - singletonList.add(TWO) ); assertThatExceptionOfType(UnsupportedOperationException.class).isThrownBy(() - singletonList.set(0, A brand new string) );如果我们运行测试它就会通过。因此无论我们是向列表中添加元素还是更改列表中的元素都会抛出UnsupportedOperationException。 值得一提的是如果我们查看返回的列表类的源代码与其他List实现不同返回列表中的单个元素不会存储在数组或任何其他复杂的数据结构中。相反列表直接保存元素对象 private static class SingletonListE extends AbstractListE implements RandomAccess, Serializable {...private final E element;SingletonList(E obj) {element obj;}... }因此它需要更少的内存。 4. 总结 我们用表格总结一下Arrays.asList()方法和Collections.singletonList()方法的特点。 Arrays.asList()Collections.singletonList()结构性变化不允许不允许非结构性变化允许不允许数据结构由数组支持直接握住元件 在这篇文章中我们讨论了Arrays.asList()方法和Collections.singletonList()方法。 当我们想要初始化一个只有一个元素的固定大小列表时我们可以考虑使用Collections.singletonList()方法。但是如果需要更改返回列表中的元素我们可以选择Arrays.asList()方法。
http://www.zqtcl.cn/news/182921/

相关文章:

  • 西安网站设计与建设第三方检测机构
  • 手机网站推广法建设网站明细报价表
  • 一级a做爰片免费网站录像好商网的网站可以做中英文切换吗
  • 视频网站闪图怎么做网件路由器管理地址
  • 一个完整的网站建设网站模板去哪要
  • 烤漆 东莞网站建设水果香精东莞网站建设技术支持
  • 国家重大项目建设库网站北京网站开发外包公司
  • 建设免费网站制作二维码的软件app
  • 网站突然没收录了网站建设和运营的成本是多少钱
  • 家政公司网站模板wordpress防cc代码
  • 福田附近做网站公司网站反向链接
  • 南阳网站关键词哪做网站便宜
  • 往网站上做新东西需要什么智库网站建设
  • 网站建站系统程序做网站代理商好赚吗
  • 哪些网站是做食品dedecms转wordpress
  • 广东华迪工程建设监理公司网站网站的优化从哪里进行
  • 国产做的视频网站优秀网站首页
  • 做国际黄金看什么网站网络营销品牌推广公司
  • 手机自助建站平台手机网站开发设计报价单
  • 网站建设标书范本注册了一个域名怎么做网站
  • 行政部建设公司网站东莞市做网站
  • 网站建设开发的流程建设官方网站的主要作用
  • 怎样用模板做网站wordpress柚子皮
  • 长宁区网站建设公司内蒙古赤峰市建设局网站
  • 网站配色怎么对网站的数据库做管理
  • 企业网站效果图wap网站
  • 网站建设优化托管跨境电商怎么做流程
  • 昆明网站建站平台在线阅读网站开发教程
  • pv3d 优秀网站18种最有效推广的方式
  • 一站式网站建设顾问网站建设公司专业网站科技开发