The 18-year-old, named in local media as Lee de Paauw, suffered extensive injuries to his left arm after he was attacked in Johnstone River on Australia's northeastern coastline early Sunday morning, the Queensland Ambulance Service (QAS) said.
He had jumped into the river as a dare while "revelling with friends", QAS Cairns senior operations supervisor Neil Noble told the media.
"He's very fortunate that he survived this incident and was able to be rescued... (he's) due to undergo surgery for extensive injuries to his arm," Mr Noble said.
Local newspaper The Cairns Post said Mr Paauw escaped the crocodile's grip on his left arm by punching it in the head with his right arm.
Lee de Paauw's friends' efforts to get him out of the water quickly helped him survive, Mr Noble added.
Crocodiles are common in Australia's north where numbers have increased since the introduction of protection laws in 1971.
Australia is home to two crocodile species - the freshwater and the saltwater. Both are found in Northern Australia, with "freshies" growing up to 2.5 metres long while the larger and more feared "salties" can be as big as seven metres long.
Crocodiles kill an average of two people each year in Australia.
In November 2016, a Danish backpacker survived a close encounter with a crocodile after "body slamming" the creature while trying to take a photo of it in Western Australia.