본문 바로가기

STUDY/JSP

20240312 카드 출력

728x90

카드의 숫자와 모양이 포함된 Card클래스를 만든다

package game;

public class Card {
	
	public int num;
	public String kind;
	
}

 

스페이드 부터 클로버까지 총 52개의 Card를 담기 위해 Card클래스로 배열을 만든다.

카드 모양 4가지를 담는 String 배열을 만든다.

for문을 사용해 Card배열에 숫자와 모양을 넣는다.

 

for문을 통해 숫자와 모양이 담긴 Card 배열을 섞는다.

 

img태그를 사용해 출력한다

card.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import = "game.Card" %>

<%
	Card[] db = new Card[52];
	
	String[] k = {"spade", "diamond", "heart", "clover"};	

	for(int i = 0; i < db.length; i++) {
		db[i] = new Card();	
		db[i].num = i % 13 + 1 ;
		db[i].kind = k[i/13];	// index 0 ~ 12 -> 0, 13 ~ 25 -> 1 ... 39 ~ 52 -> 3
	}
	
	for(Card c : db) {
		System.out.println(c.num + " " + c.kind);
	}
	
	// 셔플하기
	for(int i = 0; i < 10000; i++) {
		Card temp = db[0];
		int suffle = (int)(Math.random() * 52);
		db[0] = db[suffle];
		db[suffle] = temp;		
	}
	
	
	for(Card c : db) {
		System.out.println(c.num + " " + c.kind);
	}
%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<%
		int i = 1;
		for(Card c : db) {
	%>
			<img src="./img/<%=c.kind+c.num%>.jpg">
	<%
			if(i % 13 ==0) {
				
	%>
				<br>
	<%
			}
			i = i + 1;
		
		}
	%>
</body>
</html>

728x90

'STUDY > JSP' 카테고리의 다른 글

20240313 값을 넘기는 3가지 방법  (0) 2024.03.13
20240312 <a>태그로 값 넘겨 구구단 출력  (0) 2024.03.12
20240312 원피스 출력  (0) 2024.03.12
20240312 로또 추첨기  (0) 2024.03.12
20240308 달력(3월)  (0) 2024.03.08