There are public tennis courts on St. John, across the car barge dock.  You don’t have to reserve or pay, just go and play! Aside from the public courts there are a few courts at resorts for example at the Westin or Caneel Bay Resort.