Java readLines()上的Groovy Reader HashSet返回的顺序不正确

Java readLines()上的Groovy Reader HashSet返回的顺序不正确,java,groovy,hashset,readlines,Java,Groovy,Hashset,Readlines,我对Groovy(以及大多数后端)非常陌生。我通常是一名JS开发人员,所以请耐心听我说 我有一个静态.txt文件,其中包含一个清单,每行一项: asdf/asdf/rewer.js asdf/asdf/opuio.js asdf/asdf/rnieo.js asdf/asdf/tewoe.js 我已经用readLines()成功地读取了它,并用HashSet()将它转换为数组 但是,此数组不是文件的原始顺序。。。它也不是按字母顺序排列的。所以我不知道这是如何订购的,也不知道如何维持正确的订单

我对Groovy(以及大多数后端)非常陌生。我通常是一名JS开发人员,所以请耐心听我说

我有一个静态.txt文件,其中包含一个清单,每行一项:

asdf/asdf/rewer.js
asdf/asdf/opuio.js
asdf/asdf/rnieo.js
asdf/asdf/tewoe.js
我已经用
readLines()
成功地读取了它,并用
HashSet()
将它转换为数组

但是,此数组不是文件的原始顺序。。。它也不是按字母顺序排列的。所以我不知道这是如何订购的,也不知道如何维持正确的订单

如何维持订单?

(不要问我为什么要在.txt中列出JS文件并以这种方式提取它们。这是一个疯狂而复杂的要求。只是想保持秩序。)


谢谢

您为什么要为此使用
HashSet

如果需要一个行数组,可以使用
list.toArray()


我使用HashSet是因为我是新手。非常有效,谢谢你的帮助@Randy:另外,数组也不是惯用的groovy,通常使用列表,除非有一些丑陋的遗留Java东西需要它。哈希集不能保证顺序。你试过LinkedHashSet吗?
def linesAsArray = new File('file.txt').readLines().toArray()