Является ли «toArray» множества детерминированным?

Очевидно, множества не имеют никакого порядка, поэтому я не могу ожидать какого-либо определенного порядка, если я это сделаю

String[] string = mySet.toArray();

Однако я столкнулся со случаем использования, когда мне все равно, в каком порядке находится массив строк, но мне ДЕЙСТВИТЕЛЬНО нужно, чтобы это было так, что если два набора равны друг другу, то:

StringUtils.join(mySet.toArray(),',');

создаст одну и ту же точную строку для эти наборы всегда, независимо от того, сколько раз я запускаю программу, предполагая, что придерживаюсь одного и того же кода.

Есть ли у меня эта гарантия?

Точно так же, верно ли все это для порядка, в котором элементы появляются для данного набора в итераторе?

6
задан bernie 30 March 2012 в 21:04
поделиться