728x90
반응형
숫자 섞기 메서드 생성
int 배열을 매개변수로 줄 때 그 배열의 숫자를 자동으로 섞는 메서드 생성
출력문 : [6, 7, 9, 4, 5, 2, 8, 1, 3]
- 숫자 배열을 섞는 알고리즘은 동일함. 같은 알고리즘을 메서드로 생성하여 재사용이 가능한 코드로 만듬
public static void main(String[] args) {
int[] original = {1,2,3,4,5,6,7,8,9};
ArrayShuffle as = new ArrayShuffle();
as.shuffle(original);
}
}
class ArrayShuffle{
// 메서드
public void shuffle(int[] a) {
Random random = new Random();
for(int i = 0; i<a.length; i++) {
int ran = random.nextInt(a.length);
int tmp = a[0];
a[0] = a[ran];
a[ran] = tmp;
}
System.out.println(Arrays.toString(a));
}
}
문자열 숫자 체크기
주어진 문자열이 모두 숫자이면 true, 문자가 포함되있으면 false, 공백이면 null 출력
출력값: false
public static void main(String[] args) {
Number.check("1234o0");
}
}
class Number{
public static void check(String str) {
int isum = 0; //빈 int 값 생성
for(int i = 0; i<str.length(); i++) {
char ch = str.charAt(i); //주어진 String 값을 char 값으로 변환
if('0' <= ch && ch <= '9') { //주어진 char값이 0-9까지의 값이 아니라면
isum++; //빈 int값에 +1 누적합
}
}
if(isum == 0) { //빈 int 값이 공백이라면 null
System.out.println("null");
System.exit(isum); //null을 프린트하고 종료
} //종료가 안될 시 마지막 조건문도 수행하여 true false를 출력하기 때문에 종료시켜야 함
System.out.println(isum == str.length() ? true : false);
// 삼항연산자를 사용하여 조건이 맞을 시 true 아니면 false
}
}
728x90
반응형
'Java > 자바의정석 기초편' 카테고리의 다른 글
자바의 정석 7장 (15일차) - 상속 (inheritance) & 포함 (composite) (0) | 2022.01.31 |
---|---|
자바의 정석 6장 (15일차) - 메서드 생성 예시문제2 (0) | 2022.01.31 |
자바 학습 & 복습 12일차 - 매서드간의 호출 & 참조, 오버로딩(overloading) (0) | 2022.01.26 |
자바 학습 & 복습 11일차 - 인스턴스 & static 매서드 (0) | 2022.01.26 |
자바 학습 & 복습 10일차 - return 문 & 기본형, 참조형 매개변수, 참조형 반환타입 (0) | 2022.01.24 |