A hit-and-run attack at a sports centre in the southern Chinese city of Zhuhai killed 35 people and severely injured 43, local police said on Tuesday.
The incident happened at 7:48 pm (1148 GMT) on Monday, when a small off-road vehicle was driven into a large group of people exercising outside the sports centre.
Zhuhai police said in a statement on Tuesday that the suspect, a 62-year-old man surnamed Fan, was being treated at a hospital after hurting himself with a knife in his car.
Fan was apprehended by police at the scene after attempting to flee, police said, adding that he had self-harmed using a knife, causing severe neck injuries.
Police said their preliminary investigation suggested the incident was triggered by Fan's discontent following a divorce.
President Xi Jinping, cited by Chinese state television CCTV, ordered all-out efforts to treat the injured and demanded severe punishment for the perpetrator. The central government has dispatched a team to provide guidance on handling of the case, CCTV said.
Violent crime is rare in China due to tight security and strict gun laws. However, a rise in reports of knife attacks in large cities has drawn public attention to safety in public spaces.
In October, a knife attack in Beijing left five people wounded outside one of the city's top primary schools. A month earlier, a Japanese student was fatally stabbed outside his school in Shenzhen.
Zhuhai is hosting China's biggest annual air show this week where a new stealth jet fighter will be on display for the first time.