Map from Google - Sri_Lanka

In Sri Lanka, formerly Ceylon, the climate is tropical, hot and humid throughout the year (in fact, the country is located just north of the equator), and affected by the monsoon regime, which influences the rainfall pattern. In addition, the inland elevations, which are higher in the south-central part of the island, influence the intensity and the distribution of rainfall in the different areas: the south-western mountain slope and the coastal area of the capital Colombo are the rainiest, while the driest areas are the north-west coast (see Mannar) and south-east coast (see Hambantota).
The highest mountain is Pidurutalagala (or Mount Pedro), 2,524 metres (8,280 feet) high.
The rains in Sri Lanka, as usually happens in countries having a tropical climate, occur mainly in the form of downpour or thunderstorm.
There are two peaks in the rainfall: the first, in April and May, only affects the south-west and the interior, while the second, from October to December, due to the retreating monsoon, affects the whole country. During summer, the southwest monsoon prevails, but it releases the bulk of the rains in India, and in Sri Lanka it brings heavy rains only on the southwest coast (see Colombo) and in the mountainous interior.
From March to May, before the arrival of the monsoon, there is an increase in temperature, more noticeable in the north-central part of the country.
The amount of sunshine is never low on the coasts, because even in summer and during the rainy autumn season there are on average about 6 hours of sunshine a day, however, it is better in the dry season (January to March in Colombo and on the west coast, and February to April in Batticaloa and on the east coast), when there are 8/9 hours of sunshine per day. On the contrary, in inland mountainous areas, cloudiness is more common, and the sun is rarely seen from May to December.

In the north-west (see Mannar, Jaffna), partially protected from neighbouring India, between 1,000 and 1,200 mm (40 to 47 in) of rain per year fall, and the rains are abundant only between October and December.
Here is the average precipitation in Mannar.
Average precipitation - Mannar
Prec. (mm)40604580455121240165235220963

Temperatures in the north are high throughout the year, but compared to the south there's a greater difference between the winter months and the pre-monsoon period, from March to May. Here are the average temperatures.
Average temperatures - Mannar
Min (°C)242424262727272626252524
Max (°C)293032333231313131313029
Min (°F)757575798181817979777775
Max (°F)848690919088888888888684

In the north-west, the sun shines often from January to May, while in the rest of the year all in all the sun is seen for a decent number of hours, both in the summer (where it rains little, but there's still some cloudiness related to the south-west monsoon), and at the end of the year (when the north-east monsoon discharges abundant rains, but otherwise the sun shines). Here are the average sunshine hours in Jaffna.
Sunshine - Jaffna
Sun (hours)899986677767

Along the east coast, around 1,600 mm (63 in) of rain per year fall, and the rains are more abundant between October and January in the northern part (see Trincomalee), and also in the central part (see Batticaloa), where, however, the summer drought is quite pronounced, so the landscape is semi-arid.
Here is the average precipitation in Batticaloa.
Average precipitation - Batticaloa
Prec. (mm)210130905540254050651803504201650

On the east coast the sun regularly shines much of the year, since the area is in a rain shadow from to the southwest monsoon.
Sunshine - Batticaloa
Sun (hours)689989888876

The south-east coast (see Hambantota, Kirinda), receives relatively little rainfall as the north-western coast, and rainfall amounts to 1,000/1,200 mm (40/47 in) per year as well, with a relative peak of more than 100 mm (4 in) per month in April and May, and a more pronounced one from October to December.
On mountain slopes (see Nuwara Eliya), it rains a lot and the amount of sunshine is scarce from May to December.
The Sri Lankan capital, Colombo, is located in the rainiest part of the country, namely the south-western side. Here, 2,500 mm (98 in) of rain per year fall, with two maxima, in April-May and October-November, when precipitation exceeds 240 mm (9.5 in) per month. Between the two rainy periods, there is a relative summer break in July and August, with about 120 mm (4.7 in), while the driest months, with less than 100 mm (4 in) per month, are January and February.
Here is the average precipitation.
Average precipitation - Colombo
Prec. (mm)60751302453901851201202453654151752525

In Colombo, the heat is constant throughout the year, with highs around 30/32 °C (86/90 °F), but the humidity is a bit lower in January and February. Here are the average temperatures.
Average temperatures - Colombo
Min (°C)222324252626252525242323
Max (°C)313132323130303030303030
Min (°F)727375777979777777757373
Max (°F)888890908886868686868686

In Colombo the sun shines regularly from January to April, while from May to September it does not shine very often, being directly exposed to the southwest monsoon.
Sunshine - Colombo
Sun (hours)899866666677

In the interior, at low altitude the heat is particularly intense. In Anuradhapura, in the north-central inland region, the heat is intense throughout the year, but especially between March and September. The rainfall amounts to 1,300 mm (51 in) per year, with a peak between October and December, and a minimum in summer, between June and August. In April and May there is an increase in the afternoon showers, but not so intense as in the south-west.
Average temperatures - Anuradhapura
Min (°C)212123242525252424232322
Max (°C)303234343333333333323029
Min (°F)707073757777777575737372
Max (°F)869093939191919191908684


With increasing altitude, the climate becomes milder. Already in Kandy, at 450 metres (1,450 ft) above sea level and in the centre of the island, the heat is slightly less intense than in the plains: the daily average ranges from 23.5 °C (74 °F) in January, to 26 °C (79 °F) in April.
Average temperatures - Kandy
Min (°C)181920212221212120202020
Max (°C)283031313028282828292828
Min (°F)646668707270707068686868
Max (°F)828688888682828282848282

Rainfall in Kandy amounts to 1,850 mm (72 in) per year, with a minimum from January in March, and a maximum between October and December. Here is the average precipitation.
Average precipitation - Kandy
Prec. (mm)8075701901451301301151552652951951840

In Nuwara Eliya, at 1,900 metres (6,200 ft) above sea level, the temperature is spring-like all year round, but at night it can be a bit cold between December and March. The rainfall pattern is similar to that of Kandy; even here there is no real dry season, although the rainfall drops below 100 mm (4 in) per month in February and March. The sky is often cloudy between May and December.
Average temperatures - Nuwara Eliya
Nuwara EliyaJanFebMarAprMayJunJulAugSepOctNovDec
Min (°C)91010111313131312121211
Max (°C)202123232119191919202019
Min (°F)485050525555555554545452
Max (°F)687073737066666666686866

In Nuwara Eliya the sun is rarely seen from May to September, and in any case it does not shine too often even in the least rainy months, February and March.
Sunshine - Nuwara Eliya
Nuwara EliyaJanFebMarAprMayJunJulAugSepOctNovDec
Sun (hours)566533223445

Unawatuna beach

As mentioned, in Sri Lanka the sea is warm all year round, as we can see from the water temperature at Colombo.
Sea temperature - Colombo
Sea (°C)282829302928272727282828
Sea (°F)828284868482818181828282

Sri Lanka lies in the path of tropical cyclones, even though most of them pass to the north, over India and the Bay of Bengal. The period of cyclones, which are able to bring heavy rains and strong winds, goes from April to December, with two peaks in May and November, but to tell the truth they can form even in winter, since at a latitude so low the sea remains warm all year round, so it's always able to provide energy for their formation.

When to go

In general, the best time to visit Sri Lanka is from January to March; on the east coast and in the interior the month of January is still rainy, therefore here the best months are February and March. February is probably the best month of all. However, between April and September, the rains are usually poor in the northern, eastern and south-eastern sides, therefore, although it's hot, sunshine is not too frequent, and cyclones may occur, these areas can be visited even in this period. In summer, in July and August, there is also a certain decrease in rainfall in Colombo and the south-west, so in this period usually the rains are intense only in inland elevations.
As mentioned, for swimming the sea is warm all year round, however, the best time is from January to March along the south-west coast and in Colombo, and from February to April in the north and east coasts.

What to pack

All year round, light clothes, of natural fibres, light raincoat or umbrella, comfortable shoes, scarf for the breeze, light sweatshirt for the evening, especially in hill cities (see Kandy). In Nuwara Eliya and at high altitudes, spring/autumn clothes, sweater and jacket for the evening, raincoat or umbrella.
For the reef, equipment for snorkeling, water shoes or rubber soled shoes.
Before entering temples, it is customary to remove shoes, dress neatly and cover a little.