apidoc z distinct
w SeqLike
mówi:Scala SeqLike odrębna zachowuje porządek?
Buduje nową sekwencję z tej sekwencji bez zduplikowanych elementów. Powraca: Nowa sekwencja, która zawiera pierwsze wystąpienie każdego elementu tej sekwencji.
Czy mam pewność, że nie udzielono gwarancji na zamówienie? Mówiąc bardziej ogólnie, czy metody SeqLike zapewniają dowolną gwarancję na zamówienie (w kolejności)?
Więc SeqLike nie musi gwarantować, ale Seq ma? – ron
Nie sądzę, że jest to technicznie poprawne. Podczas gdy sekwencje oczywiście mają porządek, nie mogłem znaleźć niczego, co wspomniałoby o zachowaniu go podczas każdej operacji. Zgadzam się, że niektórzy ludzie tego oczekują, ale nie sądzę, że implementacja, która umieszcza elementy sekwencji w "Zestawie" i zwróci je w dowolnej kolejności, naruszałaby jakąkolwiek umowę. Powiedziawszy, że uważam, że obecna implementacja zachowuje porządek. – pazabo
@pazabo Prawdopodobnie masz rację, że nie ma żadnej gwarancji - ani ze specyfikacji, ani oczywiście z żadnego narzędzia, kompilatora, wykładziny itp., Ale każdemu, kto sprzeciwia się tej zasadzie, można łatwo zarzucić naruszenie zasady najmniej zaskakujące, a standardowa lib nie robi tego. –