[Newbies] Sorting

Edward Stow ed.stow at gmail.com
Wed May 16 17:53:16 UTC 2007

On 17/05/07, Chris Cunnington <cunnington at sympatico.ca> wrote:
> Hi Squeakers,
> I have a string: 'Hello'.
> To reverse the letters I write:
>  a := 'Hello' reverse.
> And I get 'olleH'.
> How do I sort the letters alphabetically? So I get 'eHllo'?
>  a := 'Hello' sortBy: [:x :y | a < b ]
> What parameter do you use to sort the letters? Do you have to convert them
> to a number, an Ascii or Unicode number first, and then sort those numbers?
 a := 'Hello' sort: [:x :y |   x < y ]
 a := 'Hello' sort: [:a :b |   a < b ]  but convention is to use x and
y block parameters.

Each element of the string is a Character and has the #< defined.
Note that 'Hello' is already sorted in Character order.

Others may like to comment on why

#sortBy: does not return a string.


Edward Stow

More information about the Beginners mailing list