Java

생활코딩 JAVA 입문편 - 나의 앱 만들기

소댓 2023. 1. 2. 23:22

14.1 나의 앱 만들기 - 오리엔테이션

- 최소한으로 배워서 최대한으로 사용하는 사례가 되도록, 알고 있는 것 만으로도 충분히 많은 일을 할 수 있다!

- 물건을 판매하는 사업을 하고 있다고 할 때, 각종 세금 및 비용을 제외한 이익을 동업자들에게 공평하게 나눠주는 작업을, 물건을 팔 때마다 해야 하는 상황에 있다고 할 때, 자바를 사용해서 해결한다면?

 

- 공급가(Value of supply) : 10000

- 부가가치세(Value Added Tax) : 1000

- 비용(expense) : -3000(30%)

- 이익(income) : 7000

- 배당(dividend) : 5:3:2 = 3500:2100:1400

 

14.2 나의 앱 만들기 - 기본 기능 구현

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class AccountingApp {
 
    public static void main(String[] args) {
 
        System.out.println("Value of supply : "+12345.0);
        System.out.println("VAT : "+ (12345.0*0.1));
        System.out.println("Total : "+ (12345.0 + 12345.0*0.1));
        System.out.println("Expense : "+ (12345.0*0.3));
        System.out.println("Income : "+ (12345.0 - 12345.0*0.3));
        System.out.println("Dividend : "+ (12345.0 - 12345.0*0.3) * 0.5 );
        System.out.println("Dividend : "+ (12345.0 - 12345.0*0.3) * 0.3 );
        System.out.println("Dividend : "+ (12345.0 - 12345.0*0.3) * 0.2 );
        
    }
 
}
 
cs

-  기존값을 선택하고 edit - Find/Replace에 들어가면 다른 금액으로 수정할 수 있음

 

 

14.3 나의 앱 만들기 - 변수 도입

- 변수화 시키는 방법은, 값을 선택하고 오른쪽 클릭 -Refactor - Extract Local Variable

 > Valueofsupply, vatRate, 

- expense는 일괄로 변경할 경우 오류가 생길 수 있어 직접 expenseRate 변수 정의

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
public class AccountingApp {
 
    public static void main(String[] args) {
 
        double valueOfsupply = 10000.0;
        double vatRate = 0.1;
        double expenseRate = 0.3;
        double vat = valueOfsupply*vatRate;
        double total = valueOfsupply + vat;
        double expense = valueOfsupply*expenseRate;
        double income = valueOfsupply - expense;
        double dividend1 = income * 0.5;
        double dividend2 = income * 0.3;
        double dividend3 = income * 0.2;
        
        System.out.println("Value of supply : "+valueOfsupply);
        System.out.println("VAT : "+ vat);
        System.out.println("Total : "+ total);
        System.out.println("Expense : "+ expense);
        System.out.println("Income : "+ income);
        System.out.println("Dividend 1 : "+ dividend1 );
        System.out.println("Dividend 2 : "+ dividend2 );
        System.out.println("Dividend 3 : "+ dividend3 );
        
    }
 
}
cs

 

14.4 나의 앱 만들기 - 입력값 도입

- 입력값을 주면 그에 따라 출력값을 나타내는 어플리케이션 만들기

- run - run configurations - arguments - 입력값 입력 - name 변경 - string을 double에 맞게 데이터 타입을 바꿈(Double.parseDouble)

 

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
public class AccountingApp {
 
    public static void main(String[] args) {
 
        double valueOfsupply = Double.parseDouble(args[0]);
        double vatRate = 0.1;
        double expenseRate = 0.3;
        double vat = valueOfsupply*vatRate;
        double total = valueOfsupply + vat;
        double expense = valueOfsupply*expenseRate;
        double income = valueOfsupply - expense;
        double dividend1 = income * 0.5;
        double dividend2 = income * 0.3;
        double dividend3 = income * 0.2;
        
        System.out.println("Value of supply : "+valueOfsupply);
        System.out.println("VAT : "+ vat);
        System.out.println("Total : "+ total);
        System.out.println("Expense : "+ expense);
        System.out.println("Income : "+ income);
        System.out.println("Dividend 1 : "+ dividend1 );
        System.out.println("Dividend 2 : "+ dividend2 );
        System.out.println("Dividend 3 : "+ dividend3 );
        
    }
 
}
cs

 

- 만약, 이클립스 없이 간편하게 해당 어플리케이션을 실행하기 위해서는?

> 프로젝트 경로 찾기(프로젝트 선택 - 오른쪽 클릭 - properties - 경로 카피) >  콘솔 열기(윈도우+r -cmd)

> cd + 경로 입력 > dir 입력 > java AccountingApp 입력값 - 입력