Cameron Diaz
Cameron Diaz has dated Justin Timberlake, Jared Leto and Alex Rodriguez in the past Reuters

Cameron Diaz has opened up about why she waited until she was 42 to get married. The Sex Tape star married Good Charlotte singer Benji Madden, 38, in 2015 after dating for seven months.

The Charlie's Angels star, during Goop's Wellness Summit on 10 June, said that the reason she waited for a long time to get married was because she had not found the right partner she could spend her life with.

"I think it's a matter of I just hadn't met my husband. I had boyfriends before, and there's a really, really distinct difference between husbands and boyfriends," Diaz said as quoted by Us Weekly.

Diaz went on to add that although she and her husband are "so different from one another" they complement each other well.

"And I have a husband who is just my partner in life and in everything. Talk about two very different people! We are so different from one another, but we share the same values — we're totally two peas in a pod," she said.

"We are both just weird enough for each other. We women are objectified so much. Somehow my husband has just been able to kind of show me what it's like not to have that be a part of a relationship, and being an equal. I never experienced that before. I'd never been loved in that way. I look at him every day and he inspires me — he works so hard. I feel so lucky."

Diaz, who has dated Justin Timberlake, Jared Leto and Alex Rodriguez in the past, also talked about why she stayed out of the spotlight after starring in 2014 movie Annie.

"I just went, 'I can't really say who I am to myself.' Which is a hard thing to face up to," she said. "I felt the need to make myself whole."