티스토리 뷰

1. String 에서 concat 메소드에 대해서 설명하시오.

 

단순히 붙이는 것으로 앞 뒤 문자열을 연결해주는 것이다.

+연산을 사용하고 f3을 돌리면 +연산이 concat으로 풀어져 내부적 계산이 되는 것을 확인 할 수 있다.
String str 뒤에 str2를 붙이는 것.
예) str.concat(str2)


2. String 에서 substring 메서드 사용법은?

 

subString(0)은 잘라 내어 메모리에 다시 생성하는 것이다. 
chaAt(0)는 메로리에 다시 생성시키지 않고 코드값만 받아 오는 것이다. 
String의 인덱스에 해당하는 char를 제거 하는 것.
예) abcd 에 위치별로 삭제되고 그런거 예시


3. String compareTo 사용법은?

 

문자열이 같으면 정수 0을 리턴.

음수 리턴하면 후자가 출력되고 양수면 전자가 출력됨.

Lexicographically와 lexicographically 사전 예시

 


4. String.valueOf 에 대하여 설명하시오.

 

어떤 타입이 들어가도 String으로 변환해주는 함수

예:


5. 아래가 실행되는 원리(함수)를 표현해 보세요.

String str = "age" + 17;

 


6.StringBuilder 와 String 의 차이는?

 

String은 imutable인데

 


7.아래의 메모리 그림을 그리시오. (1차원 배열)

int[] ar1 = new int[5];

 


8.아래의 메모리 그림을 그리시오. (1차원 배열)

Box[] ar = new Box[5];

 


9. 아래를 프로그래밍 하시오.

"Hello.java" 문자열에서 파일명과 확장자인 java를 분리시키는 프로그램을 짜시오.

입력: Hello.java
출력: 파일이름은: Hello 이며 확장자는 java 입니다.

입력: Java.avi
출력: 파일 이름은: Java 이며 확장자는 avi 입니다.


- while문
- Hello.java입력을 scanner로 받아주기

 


10.아래를 배열을 활용하여 프로그램을 짜시오.

화폐매수 구하기
- 1원 부터 5000 원 까지 랜덤으로 생성.
- 500원 100 원 50 원 10원은 배열로 선언 하여 저장 

해당 랜덤생성된 화폐 매수를 아래와 같이 출력
2860원 

500원 : 5개 
100원 : 3개 
50원 : 1개 
10원 : 1개

 


배열을 이용하여 로또 번호 출력하기

1. int 담는 6개 배열 선언
2. 각각의 배열에 랜덤으로 1 ~ 45 (랜덤함수 담기)
3. 중복 제거 (제일 중요 !) 해서 6개 출력

 

 

방법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
import java.util.Arrays;
 
public class Lottery {
    public static void main(String[] args) {
        int[] lotto = new int[6];
        
        System.out.println("랜덤 번호를 알려 드립니다.");
        
        for (int i = 0; i < lotto.length; i++) {
        
            lotto[i] = (int)(Math.random()*45+1);    
            
            for(int j = 0; j < i; j++) { 
                if (lotto[i] == lotto[j]) {
                    i--;       
                    break;     
                }
               
            }            
            
        }
        System.out.println(Arrays.toString(lotto));
 
        
    }
}
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
import java.util.Arrays;
 
public class Lottery {
    public static void main(String[] args) {
        int[] lotto = new int[6];
        
        System.out.println("랜덤 번호를 알려 드립니다.");
        
    
        for (int i = 0; i < lotto.length; i++) {
            
            lotto[i] = (int)(Math.random()*45+1);    
            
            for(int j = 0; j < i; j++) { 
                if (lotto[i] == lotto[j]) {
                    i--;       
                    break;     
                }
               
            }            
            
        }
         
        for (int i = 0; i < lotto.length; i++) {
            System.out.print(lotto[i] + " "); 
        }
        System.out.println();
 
        
        
    }
}
cs

 

 

 

 

방법3 (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
public class Lottery {
    public static void main(String[] args) {
 
        int[] lotto = new int[6];
 
        for (int i = 0; i < lotto.length; i++) {
 
            lotto[i] = (int) (Math.random() * 45 + 1);
 
            for (int j = 0; j < i; j++) {
                if (lotto[i] == lotto[j]) { 
                    i--;
                    break;
                }
            }
 
        }
 
        for (int i = 0; i < lotto.length; i++) {
            System.out.print(lotto[i] + "\t");
 
        }
 
    }
 
}
cs

 

 

 

댓글