sample.java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Sample {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(1,2,3,4,5,6,7,8,9,10);
List<Integer> number_list = new ArrayList<>(list);
Calculator cal = new NoLimitCalculator();
System.out.println(cal.find_evg(number_list));
cal.add(10);
System.out.println(cal.getValue());
Calculator Limit_Cal = new MaxLimitCalculator();
Limit_Cal.add(90);
Limit_Cal.minus(40);
Limit_Cal.add(30);
System.out.println(Limit_Cal.getValue());
Limit_Cal.find_Even_Or_Odd();
Calculator Mineral_cal = new NoLimitCalculator();
Mineral_cal.add(Mineral_list.Gold);
Mineral_cal.add(Mineral_list.Silver);
Mineral_cal.add(Mineral_list.Bronze);
System.out.println(Mineral_cal.getValue()); // 270 출력
}
}
Calculator.java
import java.util.ArrayList;
import java.util.List;
interface Calculator {
void add(int num);
void minus(int num);
String getValue();
void find_Even_Or_Odd();
int find_evg(List<Integer> integerList);
}
NoLimitCalculator.java
import java.util.List;
class NoLimitCalculator implements Calculator{
int value;
public NoLimitCalculator() {
this.value = 0;
}
@Override
public void add(int num) {
this.value += num;
}
@Override
public void minus(int num) {
this.value -= num;
}
@Override
public String getValue() {
return Integer.toString(this.value);
}
@Override
public void find_Even_Or_Odd() {
if(this.value % 2 == 0){
System.out.println("짝수");
}
else {
System.out.println("홀수");
}
}
@Override
public int find_evg(List<Integer> NumberList) {
int result = 0;
int avg;
for(int i = 0; i < NumberList.size(); i++){
result += NumberList.get(i);
}
avg = result / NumberList.size();
return avg;
}
public int divide(int val){
this.value %= val;
return val;
}
}
MaxLimitCalculator.java
import java.util.List;
class MaxLimitCalculator implements Calculator {
int value;
MaxLimitCalculator() {
this.value = 0;
}
public void add(int num) {
if (this.value > 100) {
return;
}
this.value += num;
}
@Override
public void minus(int num) {
if (this.value > 100) {
return;
}
this.value -= num;
}
public String getValue() {
return (this.value > 100) ? "100을 초과하였습니다" : Integer.toString(this.value);
}
@Override
public void find_Even_Or_Odd() {
if(this.value > 100){
System.out.println("100을 초과하였습니다");
}
else {
if (this.value % 2 == 0) {
System.out.println("짝수");
}
else {
System.out.println("홀수");
}
}
}
@Override
public int find_evg(List<Integer> NumberList) {
int result = 0;
int avg = 0;
if(this.value > 100){
System.out.println("100을 초과하였습니다");
}
else {
for (int i = 0; i < NumberList.size(); i++) {
result += NumberList.get(i);
}
avg = result / NumberList.size();
}
return avg;
}
}
Mineral_list.java
public class Mineral_list {
public static int Diamond = 120;
public static int Platinum = 110;
public static int Gold = 100;
public static int Silver = 90;
public static int Bronze = 80;
}
'Java > 예제' 카테고리의 다른 글
객체지향 강의 예제 - 1 (0) | 2022.11.18 |
---|---|
Stream 예제 (0) | 2022.11.17 |
리스트 - ArrayDeque (0) | 2022.11.16 |
컬렉션 - Queue (0) | 2022.11.16 |
컬렉션 - Stack (0) | 2022.11.16 |