Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- padEnd
- LEFTJOIN
- JavaScript
- javascropt
- classList
- 스택큐
- 프로그래머스
- appendChild
- 자바스크립트
- Login
- getMinutes
- sanitize-html
- node.js
- padStart
- classname
- MySQL
- function
- 웹개발종합반
- 스파르타코딩클럽
- 백준3052번
- JavaScript#조건문#conditional
- JOIN
- SQL
- 시간보여주기
- gethours
- localstorage
- Database
- java기초
- 올바른괄호
- dateobject
Archives
- Today
- Total
just do it
반복문(for문, while문 비교), 2차원배열(java) 본문
for문과 while문의 형식 비교
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package programmingg;
public class looping {
public static void main(String[] args) {
System.out.println(1);
//2,3을 세번 반복출력하는 코드
int i=0;
while(i<3) {
System.out.println(2);
System.out.println(3);
i++;//i=i+1, 이코드가 없다면 영원히 시행되어 밑에가 unreachable code가 됨
}
System.out.println(4);
//위와 같은 것을 for문으로 만들기, for문은 반복할때 필요한 것들이 패키지로 묶여있어 편리
for(int j=0;j<3;j++) {
System.out.println(2);
System.out.println(3);
}
}
}
|
cs |
for(첫값 선언; 불리언 ; 반복마다 실행되어야 하는 코드)
for문은 필요한 게 패키지로 묶여있으니 코드의 의도 파악하기 쉬움, 반복할때 용이
while 문은 for문보다 원시적, 반복에 필수적 요소들이 떨어져 있어 반복문 작성시 헷갈리고 코드가 망가질 가능성이 있다.
반복문과 뗄 수 없는 관계, 배열의 기본 복습
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
package programmingg;
public class array {
public static void main(String[] args) {
String s[]=new String[3];
s[0]="look";
s[1]="at";
s[2]="me";
System.out.println(s[0]);//look 출력
System.out.println(s.length);//배열에 몇개의 값이 담겨있는지? 3출력
//배열 생성할때 아예 값을 담아 생성할수도 있음
String m[]= {"look", "at", "me"};
System.out.println(s[0]);//look 출력
}
}
|
cs |
반복문과 배열을 함께 사용한 예
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
package programmingg;
public class looparray {
public static void main(String[] args) {
String users[]= new String[3];
users[0]="daisy";
users[1]="mike";
users[2]="kate";
//각 사람이름 앞뒤로 html li 태그를 만들고 싶을때
for(int i=0;i<3;i++) {
System.out.println("<li>"+users[i]+"</li>");
}
}
}
|
cs |
for문 사용해 존재하는 아이디 인지 확인
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
package programmingg;
public class loginapp {
//inputid로 들어온애가 유저목록에 있는 아이디 인지 확인, for문 사용!!
public static void main(String[] args) {
String user[]= {"min","kate","jin"};
String inputid = args[0];
boolean islogined = false;//불리언 초기값 거짓으로, 플래그변수라고도함
for(int i=0;i<user.length;i++) {
String currentid = user[i];
if(currentid.equals(inputid)) {//들어온아이디값이 유저배열에있는값 첫번째,두번째,세번째 값이랑 같은거있나
islogined = true;//같은거 있으면 여기까지 내려고오 불리연 참으로 바꿔줘
break;//브레이크 있으면 브레이크가 포함된 반복문 끝내버림
}
}
System.out.println("hi");
if(islogined) {//불리언 변수 islogined이 참이니
System.out.println("master!!");
}else //참 아니니
System.out.println("who are you??");
}
}
|
비밀번호까지 맞나 확인(2차원 배열 활용)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
package programmingg;
public class loginapp2 {
public static void main(String[] args) {
String[][] users = { //배열안에 또다른 배열, 아이디와 비번을 가지고 있는 배열을, 가지고 있는 배열 생성,각각의 원소(string)가 배열인 배열
{"min","1111"},
{"kate","2222"},
{"jin","3333"}
};
String inputid = args[0];
String inputpass = args[1];
boolean islogined = false;//불리언 초기값 거짓으로, 플래그변수라고도함
for(int i=0;i<users.length;i++) {
String[] current = users[i];//i번째 사용자 정보를 current에 저장, current는 아이디, 비번 둘다 있는 배열이므로 배열형문자열로선언
if(
current[0].equals(inputid)&& //currnet배열의 첫번째 원소(여기선아이디)가 inputid랑 같냐
current[1].equals(inputpass))//currnet배열의 두번째 원소가 inputpass랑 같냐
{
islogined = true;//같은거 있으면 여기까지 내려고오 불리연 참으로 바꿔줘
break;//브레이크 있으면 브레이크가 포함된 반복문 끝내버림
}
}
System.out.println("hi");
if(islogined) {//불리언 변수 islogined이 참이니
System.out.println("master!!");
}else //참 아니니
System.out.println("who are you??");
}
}
|
cs |
*String[] current = user[i]; 요렇게 선언한 이유
user[0], user[1], user[2].... 자체가 원시데이터 아니고 배열임. 그니까 형식도 그냥 String 아닌 []붙여 선언
user[0] = {"min","1111"}
user[1] = {"kate", "2222"}
user[2] = {"jin", "3333"}
인 상황
이렇게 하면
current = { "i번째 아이디", "i번째 비번"} 이런 배열인 상태
따라서 current[0] 은 current 배열의 첫번째 원소이므로 i번째 아이디 임.
즉 current[0] 는 user[i][0] 임 같은거
String[] current = user[i]; 이거보면 수학공식처럼 양변에 [0] 붙인거랑 같은식이기도
'언어&프레임워크 > Java' 카테고리의 다른 글
객체지향(클래스, 인스턴스)(java) (0) | 2022.08.21 |
---|---|
비밀번호불일치/아이디존재 확인하는 로그인(if, for, 배열)(java) (0) | 2022.08.20 |
논리연산자(logical operator)(&&, ||) (0) | 2022.08.18 |
원시데이터타입(Primitive datatype)과 클래스(class)의 저장방식(java) (0) | 2022.08.18 |
조건문 응용(java)(if문) (0) | 2022.08.18 |