값을 치환하기(맞교환 하기)
물이 담긴 컵과 우유가 담긴 컵이 있다. 둘의 내용물을 바꿀려면 어떻게 해야 할까? 하나의 컵이 더 필요할 것이다.
변수도 마찬가지다. 변수의 데이터를 교환하려면 새로운 변수가 필요하다.
int a = 10;
int b = 20;
int temp = 0;
temp = a; //a값을 안전하게 저장한다.
a = b; //a에 b의 값을 덮어쓰기한다.
b = temp;
최댓값, 최소값 찾기
1. Array.sort() 와 같은 함수를 이용해서 정렬한뒤, 첫번째와 마지막 요소를 출력한다.
2. for문을 이용해 전체 데이터를 순회하면서 min이나 max값보다 더 작거나 큰 값으로 재할당하는 방법.
* 이때 min이나 max는 정수형의 최소나 최대(Integer.MIN(MAX)_VALUE)로 미리 설정해둔다.
int num[] = {5,4,2,8,9}
int min = Integer.MAX_VALUE; ----- int최대값. 이보다 더 큰 int형은 존재할수 없다.
for(int i = 1; i<num.lenght; i++){
if(num[i] < min){
min = num[i]; ------ num[i]가 min보다 작으면 num[i]의 값을 min에 넣음
}
}
public class ex59 {
public static void main(String[] args) {
//값의 치환(바꿔치기)
int a = 10;
int b = 20;
//a변수의 값과 b변수의 값을 치환하려면?
//temp 변수를 이용하여 값을 순차적으로 교환한다.
int temp = 0;
temp = a; //a값을 안전하게 저장한다.
a = b; //a에 b의 값을 덮어쓰기한다.
b = temp;
System.out.println( "a:" + a );
System.out.println( "b:" + b );
int[] nums = { 10, 30, 20, 50, 40 };
temp = nums[2];
nums[2] = nums[1];
nums[1] = temp;
}
}
public class ex60 {
public static void main(String[] args) {
//최소값/최대값 찾기
//1. 정렬후 첫번째, 마지막번째 요소를 선택
//2. 전체데이타를 순회하면서 min,max값보다
// 더 작거나 큰 값과 값을 설정하는 방법
// 이때 min값은 최대값(45 or 10000)으로 초기화하고,
// max값은 최소값(3 or 0)으로 초기화 한다.
System.out.println( Integer.MAX_VALUE );
System.out.println( Integer.MIN_VALUE );
//연습문제 40
//최소값 구하는 순서
//1. int min = 최대값으로 초기화
//2. 배열을 전체 순환하면서,
//3. min 값보다 더 작은 값을 발견하면, 그 값을 min값으로
// 설정한다.
//4. 순환이 종료되고 min 값을 출력한다.
int[] nums = { 3, 25, 12, 45, 37 };
int min = Integer.MAX_VALUE;
for( int i=0; i<nums.length; i++){
System.out.println( "nums[i]:"+nums[i] );
System.out.println( "min:"+min );
//nums[i] : 3 25 12 45 37
//min : 21억 3 3 3 3
if( nums[i] < min ){ //min보다 작은 값을 발견하면,
System.out.println("min 변경됨!!!");
min = nums[i]; //그 값을 min으로 설정한다.
//min = 3설정됨.
}
}
System.out.println( min );
//연습문제 41 - 최대값을 출력하시오.
//{ 3, 25, 12, 45, 37 };
int max = Integer.MIN_VALUE;
for( int i=0; i<nums.length; i++){
System.out.println(nums[i]);
if( nums[i] > max ){ //max보다 큰 값을 발견하면,
max = nums[i]; //그 값을 max으로 설정한다.
}
}
System.out.println( max );
}
}
'공부 > java' 카테고리의 다른 글
자바(java)의 함수 종류 (0) | 2022.11.25 |
---|---|
자바(java) 문제 풀이 복습 (0) | 2022.11.25 |
자바(java)의 문자열 관련 함수 (1) | 2022.11.22 |
자바(java)의 반복문(2) : 다양한 형태의 반복문 (0) | 2022.11.21 |
자바(java)의 조건문(2) (1) | 2022.11.19 |