Write a method that calculates the age in years given a birth date. The method should return the number of complete years between the birth date and today.

For someone born on February 29th (leap year), treat their birthday as February 28th in non-leap years when determining if they have reached their birthday this year.

Examples:

Date birthDate = Date.newInstance(1990, 5, 15);
Integer age = calculateAgeInYears(birthDate);
// Result depends on current date, but should be accurate age in years

Date recentBirth = Date.newInstance(2023, 12, 25);  
Integer youngAge = calculateAgeInYears(recentBirth);
// Should return 1 if current date is after 2024-12-25, 0 if before

Date futureBirth = Date.today().addDays(30);
Integer futureAge = calculateAgeInYears(futureBirth);  
// Should return -1 for future birth dates
Apex Code Editor

Welcome to Lightning Challenge!

How It Works

  • • Write your solution in the code editor
  • • Connect your Salesforce org to test
  • • Submit to check if your solution passes
  • • Use hints if you get stuck

Contest Alert

🏆 #CodeEveryDay October 2026 (Oct 4–15)Sponsored by FLXBL

Contest runs October 4 - 15. Complete challenges to climb the leaderboard!

Prizes 1 & 2: Salesforce certification exam voucher — won by random drawing, where every point is a ticket. see all prizes

Only the 12 daily challenges shown during this contest count toward points. Earlier dailies don't carry over.

Wally can't hear you

Please sign in to access the AI Assistant

Sign In