At first glance, this seems like an easy assignment: Pick the 2017 All-Star teams before spring training even begins. Just go with the best players, right?

Not so fast, my friends. This is actually pretty tricky. You have to speculate on whom the fans will vote for, who will have good first halves, who will break out and who will decline. The fact is that most All-Stars from 2016 will not be All-Stars in 2017. The roster turnover from year to year is extreme: Just 10 players were National League All-Stars in both 2015 and 2016 (including all the replacement player additions that balloon the size of the roster), and just 11 were in the American League. In 2014-15, the totals were 13 in the NL and 14 in the AL.

Only 12 players have been All-Stars each of the past three seasons: Madison Bumgarner, Paul Goldschmidt, Clayton Kershaw, Anthony Rizzo, Jose Altuve, Dellin Betances, Miguel Cabrera, Josh Donaldson, Salvador Perez, Chris Sale, Mike Trout and Max Scherzer.

Francisco Lindor and Kyle Schwarber certainly are strong options to represent their leagues in the 2017 All-Star Game. Ezra Shaw/Getty Images

Complicating things even further: All-Star rosters were cut from 34 to 32 players in the new collective bargaining agreement. Fans still vote for the starting position players (including the designated hitter in the AL), players vote in reserves at each position and eight spots on the pitching staff (five starters, three relievers), and the final player vote still exists, but the commissioner’s office will now fill out the remaining roster spots instead of the managers.

As for the unpredictable nature of these rosters, consider some of the All-Stars from 2015: Shelby Miller completely collapsed; Jonathan Papelbon was released; Trevor Rosenthal imploded; Prince Fielder and Mark Teixeira retired; Brock Holt ... well, yes, Brock Holt was an All-Star. Then there are the pop-up All-Stars, including Adam Duvall and Michael Saunders and Eduardo Nunez and Steven Wright and Brad Brach and Aledmys Diaz from last season, guys you could never predict in February.

So this is mostly an exercise in fun. We’ll check back in July, and if I hit on 50 percent of these picks, that’s probably pretty good.

NATIONAL LEAGUE

Fan selections

C – Buster Posey, Giants

1B – Anthony Rizzo, Cubs

2B – Daniel Murphy, Nationals

3B – Kris Bryant, Cubs

SS – Addison Russell, Cubs

OF – Bryce Harper, Nationals

OF – Kyle Schwarber, Cubs

OF – Yoenis Cespedes, Mets

Cubs fans were enthusiastic last year, voting in five starters, and I’d expect the same enthusiasm this year. … Schwarber is a bit of wild card, but he’s hugely popular in Chicago, and unless he completely tanks at the plate, he should earn a starting nod. ... Harper is a polarizing figure among fans across the country, but he was voted a starter the past two seasons. ... Is Russell the best shortstop in the NL? No. I’d go with Corey Seager or Brandon Crawford, but while those two play for big-market teams, Russell won the vote last year. ... The third NL outfield spot is more up for grabs, but Cespedes won the vote last year (though he missed the game with an injury), and there isn’t another obvious fan favorite out there unless Giancarlo Stanton goes off. ... I’ll go with Murphy at second base, in part because I’m not sure which of Javier Baez or Ben Zobrist will be listed as the Cubs’ second baseman on the ballot.

Reserves

C – Yadier Molina, Cardinals

C – Willson Contreras, Cubs

1B – Paul Goldschmidt, Diamondbacks

1B – Freddie Freeman, Braves

2B – DJ LeMahieu, Rockies

3B – Nolan Arenado, Rockies

SS – Corey Seager, Dodgers

SS – Trea Turner, Nationals

OF – Christian Yelich, Marlins

OF – Giancarlo Stanton, Marlins

OF – Gregory Polanco, Pirates

Molina missed the All-Star game for the first time since 2008 last year, but with Jonathan Lucroy and Wilson Ramos out of the league, he has a better chance this year. ... Goldschmidt wins the player vote over Joey Votto (who has had slow starts the past two seasons) and Freeman, but Freeman makes it as the Braves’ rep. ... The players usually go for the glossy stats of Rockies hitters, and LeMahieu is coming off a batting title and Arenado is the clear choice at third base. ... Seager is a repeat All-Star, and I have Turner making it as a commissioner selection. ... It’s a tougher choice in the outfield, but I love Yelich’s game, and Stanton is due for a better season if he can stay healthy. ... Starling Marte was a reserve for the Pirates last year, but Polanco is poised for a breakout season after hitting 22 home runs in 2016.

Pitching staff

SP – Clayton Kershaw, Dodgers

SP – Madison Bumgarner, Giants

SP – Max Scherzer, Nationals

SP – Kyle Hendricks, Cubs

SP – Carlos Martinez, Cardinals

SP – Zach Davies, Brewers

SP – Robert Gsellman, Mets

SP – Robbie Ray, Diamondbacks

RP – Kenley Jansen, Dodgers

RP – Seung Hwan Oh, Cardinals

RP – Raisel Iglesias, Reds

RP – Ryan Buchter, Padres

RP – Hector Neris, Phillies

Good luck narrowing down your starters in the NL. ... Jake Arrieta and Jon Lester are certainly strong candidates, but both were All-Stars last year, and remember our rule about high turnover rate. ... Where’s Noah Syndergaard? Of the NL aces, he seems like the one most likely to break down (sorry, Mets fans). The Mets will still have an All-Star pitcher, but it's not the guy you’d expect. ... Davies is the only rep from the Brewers, and Ray is a pop-up All-Star candidate. ... Jansen and Oh were the top two relievers in the NL a year ago, and there’s no reason to expect decline from either of them. ... Iglesias dominated in the second half after moving to the bullpen and should take over as the Reds’ closer. ... Buchter and Neris had big numbers last year in setup roles, and the All-Star rosters always include relievers such as these two. Plus, we need players from the Padres and Phillies.

Repeat All-Stars from 2016: 14

AMERICAN LEAGUE

Fan selections

C – Salvador Perez, Royals

1B – Miguel Cabrera, Tigers

2B – Jose Altuve, Astros

3B – Manny Machado, Orioles

SS – Carlos Correa, Astros

OF – Mike Trout, Angels

OF – Mookie Betts, Red Sox

OF – Andrew Benintendi, Red Sox

DH – Nelson Cruz, Mariners

Carlos Correa and Jose Altuve of the Astros could be your starting middle infield for the AL All-Star team in 2017. AP Photo/Orlin Wagner

This is tricky because Royals fans have stolen a couple All-Star starting nods in recent years, including for Eric Hosmer last year and Alcides Escobar in 2015. ... I’ll give them Perez again for his fourth straight All-Star start. ... AL second base is a loaded position, with Altuve, Robinson Cano, Dustin Pedroia, Ian Kinsler and Brian Dozier, but Altuve seems to have risen above the rest in popularity. ... Machado started last year and Josh Donaldson in 2015, so it could be either guy this year. ... AL shortstop is difficult as well, with Xander Bogaerts getting the nod from the fans last year, but I think Correa is going to have a huge year, while the Indians don’t have the big fan base to vote in Francisco Lindor. ... Trout is easy, and you know Red Sox fans will vote for at least a couple starters, and if Benintendi is hitting around .300, they’ll love him like they did Fred Lynn. ... David Ortiz’s retirement opens up DH for Cruz, Edwin Encarnacion or Hanley Ramirez.

Reserves

C – Gary Sanchez, Yankees

C – Jonathan Lucroy, Rangers

1B – Chris Davis, Orioles

2B – Robinson Cano, Mariners

2B – Brian Dozier, Twins

3B – Josh Donaldson, Blue Jays

SS – Francisco Lindor, Indians

OF – George Springer, Astros

OF – Kevin Kiermaier, Rays

OF – Kole Calhoun, Angels

DH – Edwin Encarnacion, Indians

The AL has less flexibility in filling out its roster because of the two DHs it carries. ... Sanchez could beat Perez for the starting job, considering he’s going to enter the season with a ton of hype. ... I’m surprised by how weak the AL is at first base, but here’s betting on Davis doing the every-other-year thing. ... Somebody good is going to get stiffed at second base with the cut to 32 players, but I managed to find room for Dozier as the Twins’ rep. ... Last year’s AL backup outfielders were a motley group of Mark Trumbo, Carlos Beltran, Ian Desmond and Saunders, so I see a whole new group here, with Springer having a big season. ... Players don’t usually vote for defense-first players, but I’d love to see them recognize Kiermaier’s brilliance in center field. ... If Calhoun can combine his power from 2015, his improved OBP from 2016 and his good defense, he could be a sneaky All-Star selection.

Pitching staff

SP – Corey Kluber, Indians

SP – Chris Sale, Red Sox

SP – Justin Verlander, Tigers

SP – Chris Archer, Rays

SP – David Price, Red Sox

SP – Jose Quintana, White Sox

SP – Sean Manaea, Athletics

RP – Andrew Miller, Indians

RP – Aroldis Chapman, Yankees

RP – Zach Britton, Orioles

RP – Edwin Diaz, Mariners

RP – Cody Allen, Indians

Some of these guys have been All-Stars before, just not in 2016, so I have some good pitchers while fulfilling the idea of roster turnover. ... After throwing 215 innings in the regular season and 34 more in the playoffs, let’s hope Kluber doesn’t fall victim to Dallas Keuchel disease. ... Sale might be the preseason Cy Young favorite, given the runs the Red Sox will score for him (wins still matter a little bit in Cy Young voting). ... Verlander makes it back to the All-Star Game for the first time since 2013, and I see Archer and Price having bounce-back seasons. ... Quintana is a good bet as the White Sox's rep, though reliever Nate Jones could be a viable option as well. ... Good luck finding an A’s All-Star; maybe Stephen Vogt makes it for the third straight year, but I’ll go with Manaea over Sonny Gray getting back to form. ... The first three relievers seem to be pretty easy selections, and I’ll go with Diaz (15.3 K’s per nine in 2016) and Allen over the likes of 2016 All-Stars Betances and Kelvin Herrera (or a number of other strong candidates -- the AL seems much deeper in reliever candidates).

Repeat All-Stars from 2016: 14 (plus Lucroy, who was an NL All-Star)

Sixteen All-Stars are making it for at least the third straight season in either league: Nolan Arenado, Kris Bryant, Paul Goldschmidt, Bryce Harper, Anthony Rizzo, Buster Posey, Clayton Kershaw, Madison Bumgarner, Max Scherzer, Jose Altuve, Miguel Cabrera, Mike Trout, Josh Donaldson, Salvador Perez, Zach Britton and Chris Sale.

Remember that from 2014 to 2016, only 12 players were All-Stars all three seasons ... so 16 could end up being a few players too many.