ok what format are you storing the images of the cards or are you drawing them using java ?
if you are loading them in, then you have two options. load them all at runtime of your GUI this way you wont have any wait time whilst playing the game but will obv take longer to load the app [you could achieve this by loading them into an array for example]. Or you can load them on the fly as you go along this will free up the load time at beginning.
this code will work for both.
import java.awt.Image;
import java.io.File;
import javax.imageio.ImageIO;
Image[] cards = new Image[52];
try {
cards[0] = ImageIO.read(new File("card.jpg"));
} catch (Exception e) {
System.out.println(e);
}
for it to work and load all you will need to add a loop.
showing the image in the GUI is the easy part. just simply create a JLabel wherever you wish thte image to be and use the following
JLabel.setIcon(new ImageIcon(cards[0]));
hope this helps if ive understood your question right