Невозможно отсортировать массив в коде Ruby

Следующий код обнаружил, что не удалось отсортировать массив.

По некоторым причинам последний пункт "Аландские острова" был расположен в последнем для этого массива, но он должен располагаться между "Афганистаном" и "Албанией". И это происходит только в случае использования iso3166, как показано ниже, но не происходит при царапинах. Есть идеи?

$ which ruby
~/.rvm/rubies/ruby-1.9.3-p362/bin/ruby

$ cat test.rb
#!/usr/bin/env ruby
# coding: utf-8

require 'iso3166'

countries = ISO3166::Country::all.map do |c|
  c.first
end

p countries.sort

$ ruby test.rb
["Afghanistan", "Albania", ... etc ... "Zambia", "Zimbabwe", "Aland Islands"]

1 ответ

Решение

Вот мой комментарий как ответ:

'A'.ord => 65 

против

'Z'[0].ord => 90

против

'Åland Islands'[0].ord => 197
Другие вопросы по тегам