출처: https://bumcrush.tistory.com/182 [맑음때때로 여름]

ex) trim으로 공백을 제거해 준 후 isEmpty를 사용 > true

 

 

🎈 trim은 앞 뒤 공백만 제거해줄 뿐 가운데는 제거해주지 않는다.

 

지역변수 ex) for문안에 i

인스턴스 변수 ex) new 클래스();

클래스 변수 : 앞에 static / 인스턴스에 많이 사용하면 유용

 

 

 

 

- 클래스 변수 (static int)

- 인스턴스 변수 card c1 = new card();

 

 

 

void가 static void가 아니므로

card c1=new card(); 같은 인스턴스 변수를 사용하지 않고는 호출할 수 없다.

c1.play();는 사용가능

 

 

cv2= iv; 에러/ 클래스 변수는 인스턴스 변수를 사용할 수 없다.

프로그램 시행시 생성 순서는  cv(1) > cv2 (2)이기 때문에

iv는 객체를 생성( 어쩌구저쩌구 뉴 ()로 하는거)해야 사용할 수 있으므로

사용하고싶다면 static iv로 하거나 아랫줄처럼 static int cv2=new Membercall().iv 해야함

'JAVA > basic' 카테고리의 다른 글

변수의 초기화 / 초기화 블럭  (0) 2020.10.08
객체지향 : class 생성  (0) 2020.10.07
생성자 / 초기화 메소드  (0) 2020.10.07
메소드 / 메서드  (0) 2020.10.05
이항연산자의 특징 / 타입에 따른 계산 오류  (0) 2020.09.29
변수의 기본값과 초기화  (0) 2020.09.28
리터럴과 접미사  (0) 2020.09.28
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package exam;
 
public class boy {
 
//    다음조건을 만족하는 클래스를 구성하자. 구슬치기와 
//    어린아이가 소유하고 있는 구슬의 개수 정보를 담을 수 있다.
//    놀이를 통한 구슬을 주고받음을 표현하는 메서드가 존재한다.
//    두 번째 조건은 두 아이가 구슬치기를 하는 과정에서 구슬의 잃고 얻음을 의미하는 것이다.
 
int numOfMarble;
String name;
 
// 어린이의 이름과 구슬의 개수를 설정하는 메서드
 
void setBoy(String boyname, int num) {
name = boyname;
numOfMarble = num;
}
 
// 게임의 결과가 실패 -> 구슬 감소
 
void lose(int num) {
numOfMarble -=num;
}
 
// 게임의 결과가 승리 -> 구슬 증가
void win(int num) {
numOfMarble +=num;
}
 
// 게임 후 승리 메서드 : 대상(boy), 구슬의 개수
void playWin(boy boy, int num) {
// 나는 승리 나의 구슬의 개수는 증가
win(num);
// 상대방은 패배 > 감소
boy.lose(num);
}
 
// 보유 구슬 출력
 
void showData() {
System.out.println(name + "의 구슬의 개수는 "+ numOfMarble);
}
 
 
 
public static void main(String[] args) {
 
//        조건을 만족하는 클래스를 정의하였다면, 다음조건을 만족하는 인스턴스를 각각 생성하자. ( 하나의 클래스만 작성하자 )
//        어린이 1의 보유자산  구슬 15개
//        어린이 2의 보유자산  구슬 9개
 
boy boy1=new boy();
boy boy2=new boy();
 
boy1.setBoy("뽀이1"15);
boy2.setBoy("뽀이2"9);
 
//        인스턴스의 생성이 완료되면 다음의 상황을 main 메서드 내에서 시뮬레이션 하자.
//        “1차 게임에서 어린이 1은 어린이 2의 구슬 2개를 획득한다”
 
boy1.playWin(boy2, 2);
//        “2차 게임에서 어린이 2는 어린이 1의 구슬 7개를 획득한다.”
 
boy2.playWin(boy1, 2);
 
//        마지막으로 각각의 어린이의 보유 구슬의 개수를 출력하고 프로그램 종료.
 
boy1.showData();
boy2.showData();
cs

Math.abs()

- static int abs(int a)

- static double abs(double a)

- static float abs(float a)

- static long abs(long a)

- abs() 함수는 인자값에 대한 절대값을 반환하는 함수이다.


public class MathABSTest{

    

    public static void main(String[] args){

        int intNum = -15;

        double doubleNum = -3.14;

 

        //의미가 없으니 위에 두개만 예제로 듭니다.

        //float intNum = -123.2f;

        //long intNum = -18451354;

 

        System.out.println( Math.abs(intNum) );  // 15

        System.out.printlnMath.abs(doubleNum) );  //  3.14

 

    }

}

 

절대값이니 당연히 모든 음수값은 양수값으로 변경되며 절대값으로 반환된 값들은

해당 타입을 그대로 반환합니다.(int 는 int , double은 double 로 반환)

1. 10으로 나눈 나머지를 구하고 다시 10으로 나눠주는 방식을 취한다.

public static void main(String[] args) {

int num = 12345;

int sum = 0;

		while (num > 0) {
			sum += num%10; 
			num = num/10;
		}
System.out.println("sum="+sum);

}

[실행결과]

15

 

2. 응용 / 회문수 구하기

public static void main(String[] args){

int number = 12321;

int tmp = number;

int result =0; // 변수 number를 거꾸로 변환해서 담을 변수

while(tmp !=0) {

				result*=10;
				result+=tmp%10;
				tmp = tmp/10;
}

if(number == result)

System.out.println( number + "는 회문수 입니다.");

else

System.out.println( number + "는 회문수가 아닙니다.");

} // main

}

 

 

 

답은 199가 맞다.

그런데 마지막에 num++;을 하고 while을 빠져나와서 두번째꺼는 200으로 오답

		int num=0;
		int sum=0;
		
		while(sum<100) {
			num++;
			if(num%2!=0) {
				sum+=num;			
			}else {
				sum-=num;
			}
			System.out.println(num + " " + sum);
			}
		System.out.println(num); // num=199
		int num=1;  // 여기도 바꿨었음
		int sum=0;
		
		while(sum<100) {
			
			if(num%2!=0) {
				sum+=num;			
			}else {
				sum-=num;
			}
			System.out.println(num + " " + sum);
			
			num++;	
		
	}
		System.out.println(num); // num=200 틀린답

수점 셋째자리에서 반올림을 하려면 다음의 과정을 거쳐야한다.

1. 값에 100을 곱한다. 

-> 37.77778 * 100 

2. 1의 결과에 0.5를 더한다. 

-> 3777.778 + 0.5 → 3778.278

3. 2의 결과를 int타입으로 변환한다. 

-> (int)3778,278 → 3778 

4. 3의 결과를 100f로 나눈다. (100으로 나누면 소수점 아래의 값을 잃는다.) 

-> 3778 / 100f → 37.78

 

 

 

- 메서드의 종료

1. 메서드의 블럭{}의 끝에 도달했을 때

2. [return]문을 만났을때 메서드 종료

 

 

 

- 메서드와 반환값

 

1. 반환값이 없는 경우 retrun;만 써주면된다.

    // 반환 값이 있는 메서드는 모든 경우에 return문이 있어야 한다.

2. 반환값이 있는 경우 return 반환값;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int max(int a, int b){
    if(a>b)
        return a; // a<b일때 return값이 없다. NO!
 
 
int max(int a, int b){
    if(a>b)
        return a;
    else        
        return b;   // a<b일때 return값이 없으므로 추가해줌
}
 
 
int max(int a, int b){
    int result=0;
        if(a>b)
            result=a;
        else
            result=b;
    return result            // 리턴을 여러개 쓰면 에러나기 쉬우므로 이 방법을 애용하자
cs

반환값이 있는 경우 return 반환값;

 

 

오버로딩 : 같은 이름의 메서드 정의.

메소드의 매개변수 선언(개수 또는 자료형)이 다르면 메소드 오버로드가 성립한다.

 

1.

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
    
        Scanner sc = new Scanner(System.in);
        
        String id;
        String small;
        boolean b; 
        
 
        
        while(true) {
            b=false;
            System.out.print("ID 입력 : ");
            id=sc.next();
            small=id.toLowerCase(); // 대소문자 구별을 위해 소문자로 바꿔줌
            
            for(int i=0 ; i<small.length() ; i++) {
                char a = small.charAt(i);
                int asc = (int)a; // 아스키코드로 변경
                
                if ( asc<97 || asc>122 ) {
                    System.out.println("영문/숫자만 입력하세요");
                    b=true;
                    break;
                }
                else if (asc>48 || asc<58) { // 숫자는 
                    b=false;
                    break;
                }  
    }
            
            if(b==false) {
                System.out.println("입력된 ID는 " + id);
                break;
            }
            
    
cs

 

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
38
39
40
41
        
        // 영어만 입력받는 거 만들어보기 + 숫자까지 (영문과숫자로이루어진id입력받기)
        // ID
        
        
        Scanner sc = new Scanner(System.in);
        
        String id;
        String small;
        boolean b; 
        
 
        
        while(true) {
            b=false;
            System.out.print("ID 입력 : ");
            id=sc.next();
            small=id.toLowerCase(); // 대소문자 구별을 위해 소문자로 바꿔줌
            
            for(int i=0 ; i<small.length() ; i++) {
                char a = small.charAt(i);
                int asc = (int)a; // 아스키코드로 변경
                
                if ((96<asc && asc<123|| (47<asc && asc<58) ) {
                    b=false;
                    break;
                }
                else  {
                    System.out.println("영문/숫자만 입력하세요");
                    b=true;
                    break;
                }  
    }
            
            if(b==false) {
                System.out.println("입력된 ID는 " + id);
                break;
            }
            
            
        }
cs

toLowerCase();  소문자로 바꿔주는 함수 

toUpperCase() ;  대문자로 바꿔주는 함수

 

대문자를 소문자로

ex) var a = document.frm.object_name.value;

      var a = a.toLowerCase();

      alert(a);

 

소문자를 대문자로

ex)  var b = document.frm.object_name.value;

      var b = b.toUpperCase();

      alert(b);

 

string s= ""와 strings=null은 같지 않다

""는 공백문자

 

리터럴 : 그 자체로 값을 의미하는 것

 

상수(constant) 

 

final int i=3.141592 (파이값)

같은 것들을 변하지 않게 고정해줄때씀

 

final double PI = 3.141592;
// PI = 3.14; 저장불가능 재정의불가능

 

float, double모두 매우 충분한 표현 범위를 자랑한다.

• 이 둘의 가장 큰 차이점은 정밀도 이다.

• 따라서 필요한 정밀도를 바탕으로 자료형을 결정한다.

• 일반적으로 double의 선택이 선호된다.

'JAVA > basic' 카테고리의 다른 글

변수의 기본값과 초기화  (0) 2020.09.28
리터럴과 접미사  (0) 2020.09.28
파이널 / 상수 / final / 변수 고정  (0) 2020.09.28
자료형의 종류와 구분 / 변수 / 변수의 기본값과 초기화  (0) 2020.09.28
Continue 문 / 무한루프  (0) 2020.09.24
Break 문  (0) 2020.09.24
Loop 문 ( Do while 문 )  (0) 2020.09.24

기본형(Primitive type) 

- 8개 (boolean, char, byte, short, int, long, float, double)   

- 실제 값을 저장

 

참조형(Reference type) 

- 기본형을 제외한 나머지(String, System 등) 

- 객체의 주소를 저장(4 byte, 0x00000000~0xffffffff) 

'JAVA > basic' 카테고리의 다른 글

리터럴과 접미사  (0) 2020.09.28
파이널 / 상수 / final / 변수 고정  (0) 2020.09.28
실수 연산의 오류  (0) 2020.09.28
Continue 문 / 무한루프  (0) 2020.09.24
Break 문  (0) 2020.09.24
Loop 문 ( Do while 문 )  (0) 2020.09.24
Loop문 ( while 문 )  (0) 2020.09.24
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
 
import java.util.Arrays;
import java.util.Scanner;
 
public class e1 {
 
        public static void main(String[] args) {
             
            String s; // 학생수
            int stu; // 학생수
            boolean b; // 학생수 숫자입력 판별 boolean
            
            
            Scanner sc= new Scanner(System.in);
            
            // 1. 몇명의 성적을 입력할 것인지 묻기
            while(true) {
                b=false;        
            System.out.print("몇명의 성적을 입력하겠습니까?");
                    s=sc.next();
                    for(int i=0 ; i<s.length() ; i++) {
                        char a = s.charAt(i); // 숫자가 아닌 다른 수를 입력했을 경우 찾기
                        int asc = (int)a; // 아스키코드로 변경
                        if(asc<48 || asc>57) {
                            System.out.println("숫자만 입력해주세요.");
                            b=true;
                            break;
                    }
                    
            }
                    if(b==false) { // 숫자를 입력했음
                    //    System.out.println("OK");
                        stu=Integer.parseInt(s); // 제대로 된 숫자임을 확인한 후 String을 int로 바꿔준다
                    //    System.out.println(stu);// 숫자를 제대로 입력했음을 확인하기 위해 삽입해놓음
                         break;
                    }
            }
            // 2. 사람 수에 맞게 배열 확보
            
            int soo[]= new int[stu]; // 입력받은 사람 수만큼의 배열 확보
                System.out.println(soo.length); // 제대로 받았는지 확인해보기
            
            // 3. 각각의 학생의 점수 입력받기
            
                
                String sco; // 점수
                int sco2; // 점수
                boolean c; // 성적수 숫자입력 판별 boolean
                
                    for(int i=0; i<soo.length ; i++) {
                        while(true){
                            c=false;
                        System.out.print((i+1)+"번째 학생의 성적 = ");
                            sco = sc.next(); // String 점수에 넣어준다.
                            for(int j = 0 ; j<sco.length(); j++) {
                                char m = sco.charAt(j);
                                int asc = (int)m; // 아스키코드로 변경
                                if(asc<48 || asc>57) {
                                    System.out.println("숫자만 입력해주세요.");
                                    c=true;
                                    break;                            
                                    }                        
                            }
                            if (c==false) {
                                sco2=Integer.parseInt(sco);
                                soo[i]=sco2;
                                System.out.println("입력된 성적은" + soo[i]);
                                break;
                            }
                    }
                    }
                    
                    for(int i=0; i<soo.length;i++) {
                        
                    }
                    
                    
                    
                    System.out.println(); 
            // 4. 총점
                    int sum = 0;
                    for(int i=0;i<soo.length;i++) {
                        sum +=soo[i];                        
                    }
                    
                    System.out.println("총점 = " + sum);
            // 5. 평균
            
                    System.out.println("평균은 = " + (sum/soo.length));
                    
            // 6. 최고점수 최소점수
                    Arrays.sort(soo);
                    System.out.println("최고점수는 " + soo[soo.length-1]);
                    System.out.println("최저점수는 " + soo[0]);
 
    }
 
}
 
cs

 

ParseInt

String > int

1
2
3
4
5
6
         int num;
         String s = "4";
         
         num = Integer.parseInt(s);
         System.out.println(num);
         
cs

 

toString

int > String

1
2
3
        int s=140;
        String str=Integer.toString(s);
        System.out.println(str);
cs
import java.util.Random;

public class RandomnumberGenerator {
	
	public static void main(String[] args) {
		
		Random r = new Random();
		
		System.out.println(r.nextBoolean());	// 논리값두개랜덤출력 t/f
		System.out.println(r.nextInt());		// Integer범위안의 랜덤
		System.out.println(r.nextLong());
		
		System.out.println(r.nextInt(45)); // 범위설정 랜덤 0~44
		System.out.println("이번주 번호예상");
		for(int i=0; i<6; i++) {
			System.out.print(r.nextInt(46)+"\t");
		}
		
		
		Random r2=new Random(10); //seed가잇어서 한번 나온 랜덤수가 계속 똑같이 출력됌
		System.out.println("이번주 번호예상");
		for(int i=0; i<6; i++) {
			System.out.print(r2.nextInt(46)+"\t");
		}
		
		System.out.println();
		
		System.out.println("System.currentTimeMillis()  : "+ System.currentTimeMillis()); // 바뀜
		System.out.println("System.nanoTime()  : " +System.nanoTime());
		Random r3=new Random(System.currentTimeMillis());
		System.out.println("이번주 번호예상");
		for(int i=0; i<6; i++) {
			System.out.print(r3.nextInt(46)+"\t");
		}
	
	}

}
​
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        int r;
        r = (int) (Math.random() * 10); // 0~9
        // Math.random은 double형이기 때문
        // * n 은 0 ~ (n-1)까지 랜덤이라는 뜻
 
 
        
 
        
         // 랜덤으로 돌아다니는 몹(?)을 만드는 것
        
    int x;
    int y;
        
        x=(int)(Math.random()*3-1 ;
        y=(int)(Math.random()*3-1 ;
        // x = -1, 0, 1
        // y = -1, 0, 1
    
cs

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
        
        Scanner sc = new Scanner(System.in);
        int a ; // 랜덤으로 정해질 숫자
        int b ; // 유저로부터 입력받을 숫자
        a=(int)(Math.random()*100)+1;
        
        for(int i=0 ; i<10 ; i++){ // 10번의 기회만 줄것
            System.out.print("숫자를 입력하세요 (1~100): ");
            b=sc.nextInt();
                if(b>a) {
                    System.out.println("정답이 입력한 숫자보다 작습니다");}
                else if(b<a) {
                    System.out.println("정답이 입력한 숫자보다 큽니다");}
                else {
                    System.out.println("정답입니다");
                    break;}
                if(i==9) {
                    System.out.println("10번의 기회를 모두 사용하셨습니다.");
                }
            
    
cs

 

- 여러가지 요소 설정

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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
Scanner sc = new Scanner(System.in);
        
        /*
            숫자 찾기 게임
            
            random number
            범위: 1 ~ 100 -> number(71)            
                        
            user 입력: 50
            -> 너무 작습니다
            user 입력: 75
            -> 너무 큽니다
            user 입력: 65
            -> 너무 작습니다
            user 입력: 70
            -> 너무 작습니다
 
        */
        
        // 1.변수의 선언
        int r_num, u_num;
        boolean clear;
        String s_num;
        
        clear = false;
        
        // 2.랜덤 수의 산출(1 ~ 100)
        r_num = (int)(Math.random() * 100+ 1;
        System.out.println("r_num:" + r_num);
        
        // ------------------------ loop -> 10회
        boolean b = false;
        int count = 0;
        
        while(count < 10) {
        
            // 3.유저의 입력
            while(true) {    
                b = false;
                System.out.print((count + 1+ "회 숫자입력 = ");
            //    u_num = sc.nextInt();
                s_num = sc.next();        
                // System.out.println( s_num.length() );
                // abc
                for(int i = 0;i < s_num.length(); i++) {
                    char c = s_num.charAt(i);
                //    System.out.println("c = "+ c);
                    
                    /*
                    if(c != '0' && c != '1' && c != '2' &&
                        c != '3' && c != '4' && c != '5' &&
                        c != '6' && c != '7' && c != '8' &&
                        c != '9') {
                        System.out.println("정상적인 숫자를 입력해 주십시오");
                        b = true;
                        break;
                    }
                    */
                    
                    int asc = (int)c;
                    if(asc < 48 || asc > 57) { // 숫자의 범위
                        System.out.println("정상적인 숫자를 입력해 주십시오");
                        b = true;
                        break;
                    }                    
                }            
                if(b == false) {    // 문제 없음
                    //System.out.println("문제없이 입력함");
                    break;
                }    
                
                System.out.println("b = " + b);
            }
            
            // 문자열 -> 숫자
            u_num = Integer.parseInt( s_num );
                    
            // 4.판정(크다/작다)
            if(u_num > r_num) {
                System.out.println("너무 큽니다");
            }
            else if(u_num < r_num) {
                System.out.println("너무 작습니다");
            }
            else {    // 숫자를 맞춘경우
                clear = true;
                break;
            }
            
            count++;
        }
        // ------------------------
        
        // 5.결과
        if(clear) {
            System.out.println("Game Clear!");            
        }
        else {
            System.out.println("Game Over~");
        }
cs
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
38
39
40
41
42
43
44
45
46
 
// continue : 생략(skip)
/* 
      Loop문과 같이 사용
      
      
      while(){
          처리1
          처리2
          처리3
          if(조건식){
              continue;
          }
          처리4
          
          연산식
          }
 */
        
        //예제1)
        
        for(int i=0 ; i<10; i++) {
            System.out.println("for start");
            System.out.println("i = "+i);
            
            if (i>4) {
                continue;
            }
            System.out.println("for end"); // i=5일때는 for end가 출력되지 않는다
        }
        
        
        //예제2)
        
        int w=0;
        while (w<10) {
            System.out.println("while start");
            System.out.println("w = "+w);
            w++;     // 여기에 써야 무한루프X
            if(w>4) {
                continue;
            }
            System.out.println("while end");
             // w++; // 여기있으면 연산자가 아래있어서 무한루프에 걸리게 된다.
        }
    
cs

'JAVA > basic' 카테고리의 다른 글

파이널 / 상수 / final / 변수 고정  (0) 2020.09.28
실수 연산의 오류  (0) 2020.09.28
자료형의 종류와 구분 / 변수 / 변수의 기본값과 초기화  (0) 2020.09.28
Break 문  (0) 2020.09.24
Loop 문 ( Do while 문 )  (0) 2020.09.24
Loop문 ( while 문 )  (0) 2020.09.24
Loop문 ( foreach 문 ) / 배열과 foreach문  (0) 2020.09.23
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
        
    //이중for문 탈출예제
        
        for(int i=0; i<10; i++) {
            
            System.out.println("i = "+i);
        
            for(int j =0; j<5 ; j++){
                System.out.println("\tj = " + j);
                if(i==5 && j==3) {
                    break;  
                    //for문 1개에 break 1개 i=5 j=3에 탈출하지만 다시 i=6부터 돌아간다.
                }
            }
        }
            
    // 이중for문 탈출 방법 1
            
            boolean b = false;
            
            for(int i=0; i<10; i++) {
                
                System.out.println("i = "+i);
            
                for(int j =0; j<5 ; j++){
                    System.out.println("\tj = " + j);
                    if(i==5 && j==3) {
                        b = true;
                    }
                    if(b == true) {
                        break;
                    }
                    
                }
                if(b == true) {
                    break;
    }
 
    }
            
            
        //  이중for문 탈출 방법 2
            
            outside:for(int i=0; i<10; i++) {   // outside를 앞에도 적어줌 ~:
                
                System.out.println("i = "+i);
            
                for(int j =0; j<5 ; j++){
                    System.out.println("\tj = " + j);
                    if(i==3 && j==2) {
                        break outside; // 단어는 outside가 아니라 아무거나 가능  
                        
                    }
                }
            }
            
            
cs
1
2
3
4
5
6
7
8
9
10
11
12
13
/* 
 
     break문 : loop 탈출
     
 */
        
        for (int i=0; i<100; i++) {
            System.out.println("i = " + i);
            if(i==23) {
                break;
                
            }
        }
cs

 

Loop 문 이름으로 Break

1
2
3
4
5
        outerLoop : for(i=1; i<10; i++) {
            for(int j=1; j<10 ; j++) {
                System.out.println("["+i+","+j+"]");
                if(i%2==0 && j%2==0) {
                    break outerLoop;
cs

'JAVA > basic' 카테고리의 다른 글

실수 연산의 오류  (0) 2020.09.28
자료형의 종류와 구분 / 변수 / 변수의 기본값과 초기화  (0) 2020.09.28
Continue 문 / 무한루프  (0) 2020.09.24
Loop 문 ( Do while 문 )  (0) 2020.09.24
Loop문 ( while 문 )  (0) 2020.09.24
Loop문 ( foreach 문 ) / 배열과 foreach문  (0) 2020.09.23
Loop문 ( for문 )  (0) 2020.09.23
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
    /*
     
         do while문
         -사용빈도가 떨어진다.
         -조건이 맞지 않아도 1번은 처리하기 때문 (조건이 밑에 있으므로)
         
         do{
             처리
             연산식         
         }while(조건식);
     
     */
            
//    예제1)
 
    int dw=0;
    
    do {
        System.out.println("dw = "+ dw);
        dw++;
    }while(dw<10);
    
// 예제2)
    
    int dw=10//10으로수정했음
    
    do {
        System.out.println("dw = "+ dw);
        dw++;
    }while(dw<10); // 조건과 틀렸는데도 한번 실행됨
cs

'JAVA > basic' 카테고리의 다른 글

자료형의 종류와 구분 / 변수 / 변수의 기본값과 초기화  (0) 2020.09.28
Continue 문 / 무한루프  (0) 2020.09.24
Break 문  (0) 2020.09.24
Loop문 ( while 문 )  (0) 2020.09.24
Loop문 ( foreach 문 ) / 배열과 foreach문  (0) 2020.09.23
Loop문 ( for문 )  (0) 2020.09.23
스위치 문 ( Switch 문 )  (0) 2020.09.23
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
    // 10명의 데이터를 입력받도록 한다.
    
    Scanner sc = new Scanner(System.in);
    
    
    // for문으로 풀기
    int arrNum[] = new int[10];
    
    for (int i =0; i<10 ; i++) {
        System.out.println((i+1)+"번째 데이터 = ");
        arrNum[i] = sc.nextInt();
    }
    
    
    // while문으로 풀기
    int numArr[] = new int[10];
    int w1;
    w1=0;
    
    while (w1<10) {
        System.out.println((w1+1+"번째 데이터= ");
        numArr[w1]=sc.nextInt();
        
        w1++;
    }
            
cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*
        - while문
        
        변수의 선언
        초기화
        
        while(조건식){
            처리
            연산식
        }
        
*/
        
        int w;
        w=0;
        
        while(w<10) {
            System.out.println("w= "+w);
            
            w++;
        }
cs

 

while(ture) = 무한루프

'JAVA > basic' 카테고리의 다른 글

Continue 문 / 무한루프  (0) 2020.09.24
Break 문  (0) 2020.09.24
Loop 문 ( Do while 문 )  (0) 2020.09.24
Loop문 ( foreach 문 ) / 배열과 foreach문  (0) 2020.09.23
Loop문 ( for문 )  (0) 2020.09.23
스위치 문 ( Switch 문 )  (0) 2020.09.23
조건문 ( if, if-else, else if )  (0) 2020.09.23

+ Recent posts