Matt Cain and Justin Verlander will start in the 2012 All-Star Game Tuesday night.

It's been an eventful four months for the National League starter Cain. He signed a megadeal with the Giants worth up to $127 million on April 2 and threw a perfect game against the Houston Astros on June 13, the first in franchise history.

At 9-3 with a 2.62 ERA, Cain has been the stabilizing force in the rotation with two-time Cy Young winner Tim Lincecum taking his lumps (3-10, 6.42 ERA).

The fan's choice might have been Mets' knuckleballer R.A. Dickey. Dickey, a reclamation project with a 12-1 record and 123 strikeouts, is a first-time All-Star at age 37. He's one major reason the Mets (46-40) are surprise contenders at the break.

National League manager Tony LaRussa said the only differentiation in the decision was that Cain's usual catcher, Buster Posey of the Giants, has no familiarity with Dickey or knuckleball pitchers.

Verlander (9-5, 2.58) shares the MLB lead with 128 strikeouts. The Tigers (44-42) are 3.5 games behind the White Sox in the AL Central. Texas Rangers' manager Ron Washington went with Verlander, the reigning Cy Young winner, over Angels' ace Jered Weaver (10-1, 1.96). Weaver threw a no-hitter on May 2.

Verlander will oppose an NL lineup that features Triple Crown candidate Carlos Gonzalez of the Rockies batting leadoff as the designated hitter, followed by Giants center fielder Melky Cabrera, Brewers left fielder Ryan Braun, first baseman Joey Votto of the Reds, Carlos Beltran (Cardinals), Posey, Giants third baseman Pablo Sandoval, Braves second baseman Dan Uggla and Cardinals' shortstop Rafael Furcal.

The American League lineup announced by Washington has Yankees' teammates Derek Jeter and Robinson Cano batting in the top two spots and Texas outfielder Josh Hamilton third in a stretch of sluggers that features outfielder Jose Bautista (Blue Jays), Tigers first baseman Prince Fielder and Rangers third baseman Adrian Beltre. Red Sox designated hitter David Ortiz, Rangers catcher Mike Napoli and Yankees outfielder Curtis Granderson round out the AL batting order.