Both “learned” and “learnt” are considered correct as the past tense and past participle of “learn”. However, take a look at the following graph of usage of the two words in American literature (you can more about such diagrams here):
The reason the graph is for “have learn(t/ed)” instead of just “learn(t/ed)” is that “learned” is also an adjective (now quite uncommon) meaning “having a lot of knowledge”, pronounced /ˈlɜːnɪd/ (UK), /ˈlɜːrnɪd/ (US), which would slightly skew the results in favour of “learned”.
“Learnt” is somewhat more popular in British English:
There was almost no difference in popularity between the two around 1940s. However, “learned” is now the preferred form in the UK as well, so especially if you are writing for an international audience, it’s better to stick with “learned”.
Also note that “learned” is pronounced /lɜːnd/ (UK) resp. /lɜːrnd/ (US), i.e. with a “D” at the end, whereas “learnt” is pronounced /lɜːnt/ (in the UK; as in the written form, the corresponding pronunciation in the US is almost non-existent).