Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Sort Array

by Mehdi (Initiate)
on Jun 08, 2001 at 01:33 UTC ( #86763=perlquestion: print w/replies, xml ) Need Help??

Mehdi has asked for the wisdom of the Perl Monks concerning the following question:

when I use sort() to sort an array like this:
@array = (70, 10, 8);
@array = sort (@array);
the result is : 10, 70, 8
how can I get the result as: 8, 10, 70 in Perl?

Replies are listed 'Best First'.
Re: Sort Array
by wog (Curate) on Jun 08, 2001 at 01:35 UTC
    See the documentation for sort:

    # use <=> instead of default cmp @array = sort { $a <=> $b } @array;
Re: Sort Array
by ZZamboni (Curate) on Jun 08, 2001 at 02:02 UTC
    By default sort uses the cmp operator to compare elements, which does a string comparison. In ASCII order, "10" comes before "8", which is why you are getting those results. As wog pointed out, you have to instruct the <=> operator to make it compare things as numbers.


Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://86763]
Approved by root
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (1)
As of 2022-01-16 19:06 GMT
Find Nodes?
    Voting Booth?
    In 2022, my preferred method to securely store passwords is:

    Results (49 votes). Check out past polls.