[๊ตฌ๋์์นด๋ฐ๋ฏธ IT๊ตญ๋น์ง์] ์ ๋ฒ ์๊ฐ์ ๋ฐฐ์ด for๋ฌธ์ ์ด์ฉํ์ฌ ๋ค์ํ ํ์ด์ง๋ฅผ ๋ง๋ค์ด๋ณด๊ณ , ํด๋์ค์ ๋ฐฐ์ด, ์ฐธ์กฐํ์
์ ๋ฐฐ์ด์ ๋ํด์ ๋ฐฐ์ฐ๊ณ ์ด๋ฅผ ์ด์ฉํ ์ค์ต์๊ฐ์ ๊ฐ์ก๋ค.
ํผ์์ ๊ตฌ๊ตฌ๋จ์ ์ ํํ๋ฉด ํด๋น ๊ตฌ๊ตฌ๋จ์ด ์ถ๋ ฅ๋๋ ์ก์
ํ์ด์ง๋ฅผ ๋ง๋ค์ด๋ณด์๋ค.
๐ ์์ฑ (1) - guguForm.jsp
(ํผ ํ๊ทธ์ง๋ง for๋ฌธ์ ์ฌ์ฉํ๊ธฐ ์ํด html ํ์ผ์ด ์๋๋ผ jsp ํ์ผ์์ ์์ฑ)
<h1>๊ตฌ๊ตฌ๋จ ์์ฒญ</h1>
<form action="./guguAction.jsp" method="post">
<div>
<select name="dan">
<%
for(int i=2; i<=9; i=i+1) {
%>
<option value="<%=i%>"><%=i%>๋จ</option>
<%
}
%>
</select>
</div>
<div>
<button type="submit">๊ตฌ๊ตฌ๋จ ์ถ๋ ฅ</button>
</div>
</form>
๐ ๊ฒฐ๊ณผ
๐ ์์ฑ (2) - guguAtion.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("utf-8");
int dan = Integer.parseInt(request.getParameter("dan"));
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
for(int i=1; i<=9; i=i+1) {
%>
<div>
<%=dan%> * <%=i%> = <%=dan*i%>
</div>
<%
}
%>
</body>
</html>
๐ ๊ฒฐ๊ณผ
for๋ฌธ๊ณผ if๋ฌธ์ ์ด์ฉํ์ฌ 4์ ๋ฌ๋ ฅ์ ๋ง๋ค์ด๋ณด์๋ค.
๐ ์์
โ ๊ตฌํํด์ผํ ์
๐ ์์ฑ
<title>23๋
4์ ๋ฌ๋ ฅ</title>
<style>
table, th, td {
border: 1px solid gray;
}
table {
border-collapse: collapse;
width: 90%
}
</style>
</head>
<body>
<h1>2023.4</h1>
<table>
<tr>
<th>์ผ</th>
<th>์</th>
<th>ํ</th>
<th>์</th>
<th>๋ชฉ</th>
<th>๊ธ</th>
<th>ํ </th>
</tr>
</table>
<table>
<tr>
<%
int minDate = 1;
int maxDate = 30;
// td์ ์ด ๊ฐฏ์ 42๊ฐ ํ์
for(int i=0; i<42; i+=1) { // i=i+1 == i+=1
if(i%7 == 0) {
%>
</tr><tr> <!-- tr์ ์๋ก ์์ฑํด์ ๊ทธ ๋ค์์ค๋ก ๋์ด๊ฐ๋ค -->
<%
}
if((i-5) >= minDate && (i-5) <= maxDate) {
if(i%7 == 0) { // ๊ณตํด์ผ์ ์์ ํ์ํ๋ ค๋ฉด
%>
<td style="color:#FF0000;">
<%=i-5%> <!-- 1์ผ์ด 7๋ฒ์งธ์นธ๋ถํฐ ์์ํ๋ฏ๋ก i๋ฅผ -5๋ถํฐ ์์ํ๊ฒ ๋ง๋ ๋ค -->
</td>
<%
} else {
%>
<td>
<%=i-5%>
</td>
<%
}
} else {
%>
<td> </td>
<%
}
}
%>
</tr>
</table>
</body>
โญโญโญ
</tr><tr>
๋ก ์์ฑํ๋ฉด ๋ค์์ค๋ก ๋์ด๊ฐ ์ ์๋ค.โญโญโญ
๐ ๊ฒฐ๊ณผ
์ด๋ฒ์๋ ์ง์ 12์ ๋ฌ๋ ฅ์ ๋ง๋ค์ด๋ณด๋ผ๊ณ ํ์
จ๋ค.
๐ ์์
โ ๊ตฌํํด์ผํ ์
๐ ์์ฑ
<title>23๋
12์ ๋ฌ๋ ฅ</title>
<style>
table, th, td {
border: 1px solid #000000;
}
table {
border-collapse: collapse;
width: 90%
}
</style>
</head>
<body>
<h1 style="text-align: center;">2023.12</h1>
<table>
<tr>
<th>์ผ</th>
<th>์</th>
<th>ํ</th>
<th>์</th>
<th>๋ชฉ</th>
<th>๊ธ</th>
<th>ํ </th>
</tr>
</table>
<table>
<tr>
<%
int minDay = 1; // ์ต์๊ฐ ์ง์
int maxDay = 31; // ์ต๋๊ฐ ์ง์
for(int i=0; i<42; i+=1) { // ํ์ํ td ์ด 42๊ฐ ์์ฑ
if(i%7 == 0) { // 7์นธ๋ง๋ค ์ค ๋ฐ๊พธ๊ธฐ (tr ์ถ๊ฐ)
%>
</tr><tr>
<%
}
int day = i-4; // 1์ผ ์์ ์ง์ ์ ๊ธ์์ผ๋ก ์ค์ (์ผ -4,์ -3,ํ -2,์ -1,๋ชฉ 0,๊ธ 1)
if(day >= minDay && day <= maxDay) { // 1์ผ~31์ผ ์ฌ์ด๋ง ์ถ๋ ฅ
if(day%7 == 3 || day == 25) { // ์ผ์์ผ, ํฌ๋ฆฌ์ค๋ง์ค๋ ๋นจ๊ฐ์
%>
<td style="color:red;">
<%=day%>
</td>
<%
} else if(day%7 == 2) { // ํ ์์ผ์ ํ๋์
%>
<td style="color:blue;">
<%=day%>
</td>
<%
} else { // ํ์ผ์ ๊ทธ๋ฅ ์ถ๋ ฅ
%>
<td><%=day%></td>
<%
}
} else { // ์๋ฌด ์กฐ๊ฑด๋ ํด๋น๋์ง ์์ผ๋ฉด ๊ณต๋ฐฑ ์ถ๋ ฅ
%>
<td> </td>
<%
}
}
%>
</tr>
</table>
</body>
โญโญโญ
โญโญโญ
๐ ๊ฒฐ๊ณผ
โญ class์ ์ญํ
ํน์ ๋ฐ์ดํฐ ํ์ (int,char ๋ฑ..)์ ์ง์ ํด์ฃผ๋ ํด๋์ค์ด๋ค.
๐ ์์ฑ (1) - Student.java
package good;
public class Student {
public int no;
public int age;
public String name;
public char gender;
}
๐ ์์ฑ (2) - ex1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="good.Student" %> <!-- import๋ก good(ํจํค์ง๋ช
) ์๋ต๊ฐ๋ฅ -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// 1. class๋ ์ฌ์ฉ์ ์ ์ ํ์
์ด๋ค
Student s = null; // ๋ฉ๋ชจ๋ฆฌ ํ๋ณด
s = new Student(); // ๋ฉ๋ชจ๋ฆฌ ์ด๊ธฐํ
// ํ์ค๋ก ์ฐ๋ฉด Student s = new Student();
s.no = 7;
s.age = 28;
s.name = "ํ๊ธธ๋";
s.gender = '๋จ';
%>
<div><%=s.name%></div>
</body>
</html>
Student S=new Student(); ํ๋ฉด
S๋ผ๋ ๋ณ์์ ์ฐธ์กฐ๊ฐ ์์ no,age,name,gender ๋ผ๋ ์ด๋ฆ์ ์นธ์ด ๊ฐ๊ฐ ์๊ธฐ๋ฉด์ ๊ฐ์ ๊ธฐ๋ณธ๊ฐ์ด ๋ค์ด๊ฐ
โญ ์ฆ, new ์ฐ์ฐ์๊ฐ ํ๋์ผ์ ๋ฉ๋ชจ๋ฆฌ ํ๋ณด, ๋ฉ๋ชจ๋ฆฌ ์ด๊ธฐํ์
๊ธฐ๋ณธํ์
์ ์ ์ธ๊ณผ ๋์์ ํ๋ณด๊ฐ ๋์ง๋ง,
์ฐธ์กฐํ์
์ ์ฐธ์กฐ๊ฐ๋ง ํ๋ณดํ๊ธฐ ๋๋ฌธ์ new ์ฐ์ฐ์๋ก ๋ฉ๋ชจ๋ฆฌํ๋ณด์ ์ด๊ธฐํ๊น์ง ์์ผ์ฃผ๋ ๊ฒ์ด๋ค.
๋ฉ๋ชจ๋ฆฌ ํ๋ณด์ ์ด๊ธฐํ๋ฅผ ํ๊ณ ๋๋ฉด, s.no = 7; ์ฒ๋ผ ๊ฐ๊ฐ ๊ฐ์ ๋ฃ์ด์ ์ฌ์ฉํ๋ค.
ํด๋์ค๋ ์ฆ ์ฌ์ฉ์ ์ ์ ํ์ ์ด๋ค.
๊ฐ์ฒด๊ฐ ์๊ธฐ๋ง ํ๋ฉด ๊ฐ์ฒด๊ธฐ๋ฐ์ธ์ด
๊ฐ์ฒด๋ฅผ ์ฌ์ฉํด์ผ ๊ฐ์ฒด์งํฅ์ธ์ด
ํน์ ๊ธฐ๋ฅ์ ์ํํ๋๋ก ์ง์ ๋ง๋ค ์ ์๋ค. ๋ฏธ๋ฆฌ java์์ ๋ง๋ค์ด์ ธ์๋ ๋ฉ์๋๋ค๋ ์๋ค.
๐ ์์ฑ - Function.java
package good;
public class Function {
public int add(int x, int y) {
int z = x + y;
return z;
}
// ํธ์ถ ์ ํด๋น ์๋ฆฌ์ ๋์
ํด์ ๋ฐ์ ์์ด ๊ณ์ฐ๋๊ณ return๊ฐ์ด ๋ฐํ๋๋ค
// ์ฆ, ํธ์ถ ํ ๋ ๋ฉ์๋์ด๋ฆ๊ณผ ๋์
ํ ๊ฐ์ ๊ฐ์ด ์ ์ด์ ํธ์ถํ๋ค ex) f.add(1,2)
// ํธ์ถ ํ ๋์๋ ์ผ์ชฝ์ ๋ณ์์ ํจ๊ป ๋์
์ฐ์ฐ์๋ฅผ ์ ์ด์ฃผ์ด์ผ return๊ฐ์ด ๋์
๋์ด ์ ์์ ์ผ๋ก ๋ฐํ๋๋ค ex) int a = f.add(1,2)
// ๋์
ํ์ง ์์ผ๋ฉด ๊ณ์ฐ์ ์ ๋๋ก ๋์ด๋ ์ฐธ์กฐ๊ฐ๋ง ์ ์ฅ๋๊ธฐ ๋๋ฌธ์ ๋ด๊ฐ ์๋ ๋ณ์์ ๋์
ํด์ผ ๊ทธ ๊ฐ์ ์ฌ์ฉํ ์ ์๋ค
// void๋ return๊ณผ ๋ฌ๋ฆฌ ๋์
์ฐ์ฐ์๊ฐ ํ์ ์์ (๋ฐํ๊ฐ์ด ์์ด์!)
public static int minus(int x, int y) {
int z = x - y;
return z;
}
}
๐ ์์ฑ (2) - ex1.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="good.Function" %><!-- import๋ก good(ํจํค์ง๋ช
) ์๋ต๊ฐ๋ฅ -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
// 2. ํด๋์ค๋ ๋ฉ์๋์ ์์
Function f = new Function();
int result = f.add(1, 2); // x,y ๊ฐ์ ์ซ์ ๋์
// ๋ณ์๋ฅผ ์์ฑํด์ ๊ทธ ์์ return ๊ฐ์ ๋์
ํด์ฃผ์ด์ผ ๊ทธ ๊ฐ์ ๋ด๊ฐ ์ฌ์ฉํ ์ ์์
// ๋์
ํ์ง ์์ผ๋ฉด return๊ฐ์ ์ฐธ์กฐ๊ฐ๋ง ๋จ์์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ ์ ์์
int k = 7;
result = f.add(k, 7/3); // ๋์
ํ ์๋ฆฌ์ ๋ณ์๋ ์์ ์จ๋ ๊ฐ๋ฅํ๋ค
// ๋๋๊ธฐ์ ๊ฒฝ์ฐ intํ์
์ด๊ธฐ ๋๋ฌธ์ ์ ์๊ฐ๋ง ์ฌ์ฉ
// f.add(7, 2)
int result2 = Function.minus(5,2); // static ๋ฉ์๋๋ ํด๋์ค ์ด๋ฆ์ ์ฐธ์กฐํด์ ํธ์ถํ๋ค! new ์ฐ์ฐ์ ํ์ ์์
// ์ผ๋ฐ ๋ฉ์๋๋ ํด๋์ค์ ๋ฐ์ดํฐ ํ์
(๊ฐ์ฒด๋ณ์)์ ์ด๋ฆ์ ์ฐธ์กฐํด์ ํธ์ถ
// result = Function.add(5, 2); // error
// static ๋ฉ์๋์ ์
double r = Math.random();
%>
</body>
</html>
โญ ์ผ๋ฐ ๋ฉ์๋๋ ๋จผ์ new ์ฐ์ฐ์๋ก ํธ์ถํ์ฌ ๋ฐ์ดํฐ ํ์ (๊ฐ์ฒด๋ณ์)์ ์ด๋ฆ ์ ์ง์ ํด์ค๋ค, ๋งค๊ฐ๋ณ์๋ฅผ ๋ฃ์ผ๋ฉด ์ด๋ ๊ฒฐ๊ณผ๊ฐ(return๊ฐ)์ ์ ์ฅํ ๋ณ์์ ๋์ ํด์ฃผ์ด์ผํ๋ค.
๋งค๊ฐ๋ณ์์ ์๋ฆฌ์ ๋ณ์๋ ์์ ์จ๋ ๊ฐ๋ฅํ๋ค.
โญ static ๋ฉ์๋๋ ํด๋์ค ์ด๋ฆ์ ์ฐธ์กฐํด์ ํธ์ถํ ์ ์๋ค! ์ฆ, new ์ฐ์ฐ์๊ฐ ํ์ ์๋ค.
๋ค์ํ static ๋ฉ์๋๊ฐ ์๊ณ , ์๋ฐ์์ ๋ฏธ๋ฆฌ ๋ง๋ค์ด์ ธ์๋ static ๋ฉ์๋๋ ์๋๋ฐ ๊ฐ์ฅ ์ฝ๊ฒ ๊ตฌ๋ถํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋๋ฌธ์๋ก ์์ํ๋์ง ๋ณด๋ฉด ๋๋ค. ํด๋์ค๋ช ์ ์ฐธ์กฐํ๊ธฐ ๋๋ฌธ (ํด๋์ค๋ช ์ ๋๋ฌธ์๋ก ์์) ์ด๋ค.
์ด๋ฏธ ์ฐ๋ฆฌ๊ฐ ์ ์ธํ์ง ์์๋ ์ด๋ฏธ jsp์์ ์ ์ธ๋์ด์๋ ๊ฐ์ฒด๋ค์ ๋ด์ฅ๊ฐ์ฒด๋ผ๊ณ ํ๋๋ฐ, ์ด๊ฑด ์๋ฌธ์๋ก ์์ํ๋ค. ์์๊ฐ๋ถํฐ ์์ฃผ ์ฌ์ฉํ๋
out.print();
request.getParameter(""); ์ด ๋ด์ฅ๊ฐ์ฒด์ด๋ค.
// ๋ฐฐ์ด : ๋์ผํ ํ์
์ฌ๋ฌ๊ฐ๋ฅผ ์ฐธ์กฐํ๋ ์ฐธ์กฐ ํ์
int[] a = null;
a = new int[3]; // new์ฐ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ํ๋ณด, 3๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ํ๋ณด
// ์ด๋ฆ์ ์๋์ผ๋ก 0,1,2๋ก ์ง์ด์ง๊ณ ์์ ๊ฐ์ int์ ๊ธฐ๋ณธ๊ฐ์ธ 0์ผ๋ก ๋ค์ด๊ฐ๋ค
// a[0]->0, a[1]->0, a[2]->0
// ๋ฐฐ์ด ํธ์ถํด์ ๊ฐ ๋ฃ๊ธฐ : ์ฐธ์กฐ๋ณ์[์ธ๋ฑ์ค]
a[0] = 7;
a[1] = 2;
a[2] = 10;
// a[3] = 1; // ์์ธ๋ฐ์
int[] b = new int[3]; // ํ์ค๋ก ์ฐ๊ธฐ
int[] c = new int[]{7,9,10}; // ๊ฐ ๋ฃ๋ ๊ฒ(์ด๊ธฐํ)๊น์ง ํ์ค๋ก ์ฐ๊ธฐ
int[] d = {8,10}; // ๋ ์งง๊ฒ (new ์ฐ์ฐ์ ์๋ต)
// ๋ฐฐ์ด ์ถ๋ ฅํ๊ธฐ
out.print(a.length); // length: ๋ฐฐ์ด์ ๊ธธ์ด ์ถ๋ ฅํ๊ธฐ // 3
๋ฐฐ์ด๊ณผ for/foreach๋ฌธ์ ๋ผ์ด๋ ์ ์๋ ๊ด๊ณ์ด๋ค. ๋ฐ๋ณต๋ฌธ์ ํจํด์ด ์ค์ํ๋ฐ, ๋ฐฐ์ด์ ํน์ฑ(๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ 0๋ถํฐ 1์ฉ์ฆ๊ฐ) ์์ฒด๊ฐ ํจํด ๊ทธ์์ฒด์ด๊ธฐ ๋๋ฌธ์ด๋ค.
๋ํ, ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ 0๋ถํฐ ์์ํ๊ธฐ ๋๋ฌธ์ for๋ฌธ์ ์์ฑํ ๋ ์ด๊ธฐ๊ฐ์ธ i๋ฅผ 0๋ถํฐ ์ง์ ํ๊ฒ ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ for๋ฌธ์ ์์ฑํ ๋์๋ i๋ฅผ 0์ผ๋ก ์ง์ ํด์ ์์ฑํ๋ ์ต๊ด์ ๋ค์ด๋ ๊ฒ์ด ์ข๋ค.
int[] arr = {2,5,7,10}; // length == 4
<div>
<%=arr[0] %>
<%=arr[1] %>
<%=arr[2] %>
<%=arr[3] %>
</div>
์ด๋ ๊ฒ ์์ฑํด๋ ๋์ง๋ง for/foreach๋ฌธ์ ์ด์ฉํ๋ฉด ๋ฐ๋ณต๋๋ ์ฝ๋๋ฅผ ๋ ์์ฑํ ์ ์๋ค.
๐ for๋ฌธ
// for๋ฌธ ์ฌ์ฉ, ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ ํจํด์ ๊ฐ์ง๊ธฐ ๋๋ฌธ
for(int i=0; i<arr.length; i+=1) {
<%=arr[i]%>
}
๐ foreach๋ฌธ
// foreach๋ฌธ, ๋ฐฐ์ด์ ์ฒ์๋ถํฐ ๋๊น์ง ์ฝ๊ธฐ, ์ฆ length๋ฅผ ์ ํ์๊ฐ ์์
for(int n : arr) {
// n์ ๋ฐฐ์ด์ ๊ฐ์ ์์๋๋ก ๋์
<%=n %>
}
๐ ์ฝ๊ธฐ/์ฐ๊ธฐ
// for๋ฌธ์ ์ฝ๊ธฐ์ ์ฐ๊ธฐ ๊ฐ๋ฅ
for(int i=0; i<arr.length; i+=1) {
arr[i] = arr[i]*10; // ๋ฐฐ์ด์ ์ง์ ์ ์ผ๋ก ์์ ๋ ํ ์ ์๋ค
}
for๋ฌธ์ ์ด๋ ๊ฒ ์ฝ์ด์ค๋ฉด์ ๋ฐฐ์ด์ ์์ ๋ ํ ์ ์๋ค.
ํ์ง๋ง foreach๋ฌธ์ ๋ฐฐ์ด์ ๋ถ๋ฌ๋ค์ด๊ธฐ๋ง ํ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ์ด ๋ถ๊ฐ๋ฅํ๋ค.
์ํฉ์ ๋ฐ๋ผ for๋ฌธ์ ์์ฑํ ์ง foreach๋ฌธ์ ์์ฑํ ์ง ์ ํํ๋ฉด ๋๋ค.
์ง๊ธ๊น์ง ๋ฐฐ์ด ๋ด์ฉ์ผ๋ก ๋๊ฐ์ง์ ์ค์ต์ ํด๋ณด์๋ค.
๐ ์์ฑ
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
int[] ball = new int[45]; // ๊ณต 45๊ฐ ๋ง๋ค๊ธฐ (๊ธฐ๋ณธ๊ฐ 0์ธ ์ํ)
for(int i=0; i<ball.length; i+=1){ // ๊ณต์ 1๋ถํฐ 45๊น์ง์ ๊ฐ ๋์
(์์ ํด์ผ ํ๋ฏ๋ก for๋ฌธ ์ฌ์ฉ)
ball[i] = i+1;
}
// shuffle ๊ณต ์๊ธฐ (swap.jsp ์ฐธ๊ณ )
for(int i=0; i<100000; i+=1) { // 10๋ง๋ฒ ์๊ธฐ
int targetIndex = (int) (Math.random() * 45); // ๋ฐฐ์ด์ ์ธ๋ฑ์ค ์๋ฆฌ์ ๋ค์ด๊ฐ 0๋ถํฐ 44๊น์ง์ ๋๋คํ ์ซ์ ๋ฝ๊ธฐ
int temp = ball[0];
ball[0] = ball[targetIndex];
ball[targetIndex] = temp;
}
// ๋๋ฒ๊น
, ์ฝ๊ธฐ๋ง ํ๋ฉด ๋๋ฏ๋ก foreach๋ฌธ ์ฌ์ฉ, ๋๋ฒ๊น
์ ์ฝ์์ฐฝ์ ์ถ๋ ฅ
for(int n : ball) {
System.out.print(n+",");
}
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>๋ก๋๋ฒํธ</h1>
<%
for(int i=0; i<6; i+=1) {
%>
<%=ball[i]%>
<%
}
%>
</body>
</html>
โญโญโญ
// x์ y์ ๊ฐ ๋ฐ๊พธ๊ธฐ
int x = 1;
int y = 2;
int temp = 0; // ๋น๊ณต๊ฐ ํ์
temp = y;
y = x;
x = temp;
y = x; // ์ด๋ ๊ฒ ํ๋ฉด x์ y์ ๊ฐ์ด ๊ฐ์์ง๊ธฐ๋งํจ
x = y;
โญโญโญ
๐ ๊ฒฐ๊ณผ
์๋ก๊ณ ์นจ ํ ๋๋ง๋ค ๋๋คํ 6๊ฐ์ ๋ฒํธ๊ฐ ์ถ๋ ฅ๋๋ค.
์ฐธ์กฐํ์
์ ๋ฐฐ์ด์ ์ด์ฉํ์ฌ ํ์ ๋ชฉ๋ก์ ํ๋ก ์ถ๋ ฅํด๋ณด์๋ค.
๐ ์์ฑ (1) - Member.java
package good;
public class Member {
public String name;
public String gender;
public int birthYear;
public boolean major; // ์ ๊ณต์ ๋ฌด
}
<<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="good.Member" %> <!-- ํจํค์ง๋ช
์๋ตํ๊ธฐ -->
<%@ page import="java.util.Calendar" %> <!-- ํจํค์ง๋ช
์๋ตํ๊ธฐ -->
<%
// ๋ฐ์ดํฐ ์ด๊ธฐํ
Member[] list = new Member[25]; // Memberํ์
(ํด๋์ค)์ ๋ฐฐ์ด ์์ฑ // null, null
list[0] = new Member(); // ๊ณต๊ฐ ์์ฑ
list[0].name = "๊นO์ง"; // class์ ๊ฐ ๋ฃ๋ฏ์ด ๋ง์นจํ(.) ์ด์ฉ
list[0].birthYear = 1997;
list[0].gender = "์ฌ";
list[0].major = false;
.
.(์๋ต)
.
list[24] = new Member();
list[24].name = "๊นOํ";
list[24].birthYear = 1994;
list[24].gender = "๋จ";
list[24].major = true;
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>memberList.jsp</title>
<style>
table, th, td {border: 1px solid #000000; text-align: center;}
table {border-collapse: collapse;}
.small {width: 30px; height: 30px;}
</style>
</head>
<body>
<h1>ํ์ ๋ชฉ๋ก</h1>
<h3>
<div>
์ ์ฒด <%=list.length%>๋ช
<!-- ๋ฐฐ์ด์ ์ ์ฒด ๊ธธ์ด ์ถ๋ ฅ -->
</div>
</h3>
<table>
<tr>
<th>์ด๋ฆ</th>
<th>๋์ด</th>
<th>์ฑ๋ณ</th>
<th>์ ๊ณต์ ๋ฌด</th>
</tr>
<%
for(Member m : list) { // list ๋ฐฐ์ด ์ฒ์๋ถํฐ ๋๊น์ง ๋ฐ๋ณต
%>
<tr>
<td><%=m.name%></td>
<td>
<%
Calendar today = Calendar.getInstance(); // ์ค๋ ๋ ์ง ๋ฝ๊ธฐ
int todayYear = today.get(Calendar.YEAR); // ์ค๋ ๋ ์ง์์ ๋
๋ ๋ฝ์์ ๋ณ์์ ๋ฃ๊ธฐ
int age = todayYear - m.birthYear; // ํ์ฌ ๋
๋ ๋ณ์ - ํ์ด๋ ๋
๋ = ๋์ด ๊ณ์ฐ
%>
<%=age%>์ธ
</td>
<td>
<%
if(m.gender.equals("๋จ")) {
%>
<img class="small" src="./img/man.jpg">
<%
} else {
%>
<img class="small" src="./img/woman.jpg">
<%
}
%>
</td>
<td>
<%
if(m.major == true) {
%>
์ ๊ณต
<%
} else {
%>
๋น์ ๊ณต
<%
}
%>
</td>
</tr>
<%
}
%>
</table>
</body>
</html>
page import : ํจํค์ง๋ช ์๋ตํ๊ธฐ
Member[] list = new Member[25]; : ์ฐธ์กฐ ํ์ ์ ๋ฐฐ์ด์ ์์ฑํ๋ค.
<%=list.length%> : ์ ์ฒด ๋ช ์ ์ถ๋ ฅ
for(Member m : list) : ๋จ์ ์ถ๋ ฅ์ด๊ธฐ ๋๋ฌธ์ foreach๋ฌธ ์ ์ฌ์ฉ
ํ์ฌ ๋ ๋ ์ถ๋ ฅํ๊ธฐ
Calendar today = Calendar.getInstance();
int todayYear = today.get(Calendar.YEAR);
int age = todayYear - m.birthYear;
์ ๋ฒ ์๊ฐ์ ๋ฐฐ์ด ์ฝ๋ ์ด์ฉ!
if(m.gender.equals("๋จ")) : ๊ฐ์ด ๋ฌธ์์ด์ด๋ฏ๋ก equals ์ฌ์ฉ
๐ง ๋ง์ฝ์ man.jpg๊ฐ ์๋๋ผ ๋จ.jpg๋ก ์ ์ฅํ๋ค๋ฉด, <%=m.gender %>.jpg ์ผ๋ก ์์ฑํ์ฌ if๋ฌธ ํ๋๋ฅผ ์ค์ผ ์ ์๋ค.
๐ ๊ฒฐ๊ณผ