您没有理由期望JDK6或JDK8中的[BLA,TEST]输出,因为Javadoc不会向您承诺将根据插入顺序(或任何顺序)打印HashSet的元素.允许不同的实现产生不同的顺序.

如果要确保两个JDK中的输出,请使用LinkedHashSet,它维护插入顺序:

Set types = new LinkedHashSet();

String result;

types.add("BLA");

types.add("TEST");

System.out.println (types);

将打印

[BLA, TEST]

在两个版本中.

顺便说一下,Javadoc也不能保证这个输出,所以它可以被认为是一个可能在未来版本中改变的实现细节,但它不太可能改变.这个输出的原因是AbstractCollection的toString()(实现HashSet和LinkedHashSet使用)按迭代器返回的顺序列出元素.

String java.util.AbstractCollection.toString()

Returns a string representation of this collection. The string representation consists of a list of the collection’s elements in the order they are returned by its iterator, enclosed in square brackets (“[]”). Adjacent elements are separated by the characters “, ” (comma and space). Elements are converted to strings as by String.valueOf(Object).

java 8和jdk区别_java-8 – JDK 6和JDK8之间的Java Collection差异相关推荐

  1. java中集合的区别_Java中的集合与集合之间的区别

    Java收集框架用于操纵对象的收集.收集框架包含多个包装器类,便利类,用于传统实现的类,例如vector和Hashtable,收集接口等. 集合是Java集合框架中的接口.它分为两部分-Java ut ...

  2. java的 jre是什么_Java中JDK和JRE的区别是什么?它们的作用分别是什么?

    转载:https://www.cnblogs.com/lsw9/p/8685623.html Dear All: 首先请允许我为大家介绍下什么是Jre?什么是jdk? JRE: JRE是Java Ru ...

  3. java c++的区别_Java语言与C、C++之间的区别?

    小伙伴你知道吗?Java是由C++开发而来的,并且在当时一直被搁置.随着Java语言的崛起那么Java和C/C++有什么不同和相同之处呢? 通过上述我们知道那Java前身是C++,并且保留了C++的大 ...

  4. java和javaweb的区别_java和javaweb有什么关系吗?它们之间的区别是什么?

    可能很多入门学习java已经有一段时间的朋友还是没有很清楚,java和javaweb之间的一些联系是什么?或者说,这两者之间有一些什么样的区别呢?下面我们一起来看看吧. 首先我们需要弄清楚java跟W ...

  5. java final f的区别_Java中final、finally、finalize的简单区别,中等区别,详细区别(Lawliet 修改+注释版)...

    简单区别: 中等区别: 虽然这三个单词在Java中都存在,但是并没有太多关联: final:java中的关键字,修饰符. 1.如果一个类被声明为final,就意味着它不能再派生出新的子类,不能作为父类 ...

  6. java long和int 区别_java long int的区别

    java long int的区别 java中long和int都属于整型,为什么还要细分为long和int两种数据类型呢?这是因为它们代表的大小不一样.具体区别如下: 1.区别1 16位系统:long是 ...

  7. java与前端的区别_java与前端的区别

    java与前端的区别 1.web前端,主要是给网站做静态页面的,也就是说你平时浏览的网站所看到的页面基本都出自web前端,不过网站版面可以是美工出图. 2.web前端需要掌握的技术有:DIV+CSS, ...

  8. java和c++的区别_JAVA和C++区别详解

    JAVA和C++区别详解 来源:-- 作者:-- 浏览:811 时间:2016-08-10 14:18 标签: 摘要: 1)java是解释性语言,java程序在运行时类加载器从类路经中加载相关的类,然 ...

  9. java与javac的区别_java与javac的区别

    学过Java的都知道javac,它是Java语言的编译器,那么,这两者有什么具体的区别呢?下面学习啦小编给大家介绍一下Java和javac的区别. Java是一种可以撰写跨平台应用软件的面向对象的程序 ...

  10. java ee 与se区别_Java SE和Java EE之间的主要区别是什么?

    本问题已经有最佳答案,请猛点这里访问. Java SE和Java EE之间的主要区别是什么? daniweb.com/forums/thread97463.html Java SE与Java EE J ...

最新文章

  1. 深入浅出统计学(十一)总体和样本的估计
  2. 障碍期权定价 python_[宜配屋]听图阁
  3. pythonargmaxaxis1_详解numpy的argmax的具体使用
  4. 全地球的水也没办法将这个“特殊”的瓶子装满!
  5. 必须掌握的八个cmd命令行
  6. C 标准库 —— limits.h
  7. 苹果Mac 3D 模型展开工具:Unfolder
  8. 2018-2019-1 20165203 《信息安全系统设计基础》第十一周学习总结
  9. Go语言学习笔记(一) : 搭建Windows下的Go开发环境
  10. 基于java web的学生考勤带请假管理系统
  11. disp语句怎么格式 matlab_matlab输出语句print
  12. 蘑菇租房java,租房经历总结-----我是如何2天找到合适租房的(房东直租)简单粗暴...
  13. CCF-CSP认证历年真题解
  14. html+css实现静态小米商城界面的学习感受与收获
  15. 6.JUC-共享模型之工具
  16. LeetCode40 Combination Sum II 解析
  17. 通过集成第三方IM实现聊天应用
  18. TLAB(Thread Local Allocation Buffer)
  19. 用结构体指针访问结构体中的结构体指针(结构体指针的嵌套)
  20. 洛谷——P7583 [COCI2012-2013#1] DOM(java实现)

热门文章

  1. 滨州智能dcs系统推荐_推荐一:智能变电站监控系统典型作业培训教材
  2. wordpress主题ajax,为自制WordPress主题/插件的后台设置页面添加ajax支持
  3. 容器的进程与namespace、rootfs
  4. linux 环境搭建Jenkins
  5. codefores 204E. Little Elephant and Strings(后缀数组,RMQ求lcp,二分,主席树)
  6. 团队开发冲刺1.2(2015.5.10)
  7. 使用命令行编译Less源文件
  8. 2014.11.12模拟赛【美妙的数字】| vijos1904学姐的幸运数字
  9. php array_flip() 删除数组重复元素——大彻大悟
  10. 监控管理平台 OpenNMS