728x90
반응형
1.
회계 앱 만들기.
시간에 따라서 출력되게 만든다.
public class AccountingApp {
public static void main(String[] args) {
System.out.println("Value of supply : "+10000.0);
System.out.println("VAT : "+(10000.0*0.1)); //VAT 10%
System.out.println("Total : "+(10000.0 + 10000.0*0.1)); //소비자가 판매자에게 지불해야 하는 값
System.out.println("Expense : "+(10000.0*0.3)); //물건 원가
System.out.println("Income : "+(10000.0 - 10000.0*0.3)); //순익
System.out.println("Dividend 1 : "+(10000.0 - 10000.0*0.3)*0.5); // 1 배당금
//배당금 -> 5 : 3 : 2 비율로 나눠갖기로 합의.
System.out.println("Dividend 2 : "+(10000.0 - 10000.0*0.3)*0.3); // 2 배당금
System.out.println("Dividend 3 : "+(10000.0 - 10000.0*0.3)*0.2); // 3 배당금
}
}
[Edit] - [Find/Replace...] - (저장) [Replace All]
Find : 10000.0
//기존 1000.0원 값
-> Replace : 12345.0
//10000.0을 대체할 값
: 한꺼번에 소스코드 내 10000.0값이 12345.0값으로 바뀐다.
Value of supply : 12345.0
VAT : 1234.5
Total : 13579.5
Expense : 3703.5
Income : 8641.5
Dividend 1 : 4320.75
Dividend 2 : 2592.45
Dividend 3 : 1728.3000000000002
2.
+기존 프로그램에 변수 도입
12345.0 = double값이므로 변수 지정
public class AccountingApp {
public static void main(String[] args) {
double valueOfSupply = 12345.0;
System.out.println("Value of supply : "+valueOfSupply);
System.out.println("VAT : "+(valueOfSupply*0.1)); //VAT 10%
System.out.println("Total : "+(valueOfSupply + valueOfSupply*0.1)); //소비자가 판매자에게 지불해야 하는 값
System.out.println("Expense : "+(valueOfSupply*0.3)); //물건 원가
System.out.println("Income : "+(valueOfSupply - valueOfSupply*0.3)); //순익
System.out.println("Dividend 1 : "+(valueOfSupply - valueOfSupply*0.3)*0.5); // 1 배당금
//배당금 -> 5 : 3 : 2 비율로 나눠갖기로 합의.
System.out.println("Dividend 2 : "+(valueOfSupply - valueOfSupply*0.3)*0.3); // 2 배당금
System.out.println("Dividend 3 : "+(valueOfSupply - valueOfSupply*0.3)*0.2); // 3 배당금
}
}
<변수값 한꺼번에 바꾸는 방법>
1. 바꾸고 싶은 변수값 선택 후 [Refactor] - [Extract Local Variable...]
2. 바꾸고 싶은 변수값 지정 후 OK
3. 대체된 변수 값 확인
내친김에 0.1을 VatRate(부가가치세 이율)로 바꿔주기 -> 한꺼번에 바뀜
preview를 누르면 미리 볼 수 있다.
내가 바꾸고자 하는 0.3의 의미는 원가의 개념이었는데, 잘 보면 우측 17번 줄 코드에서
맨 마지막 0.3의 의미는 5 : 3 : 2로 배당금을 챙기기로 합의했던 두 번째 사람의 배당금 비율인 것이다.
-> 무작정 모든 숫자와 비율을 다 바꿔버리는 것이 능사는 아니란 것이다.
-> 따라서 0.3은 대체하지 않고 직접 바꾸는 것이 좋다.
<나머지 변수 지정>
//변수 정리 전
public class AccountingApp {
public static void main(String[] args) {
double valueOfSupply = 12345.0;
double vatRate = 0.1;
double expenseRate = 0.3;
System.out.println("Value of supply : "+valueOfSupply);
double VAT = valueOfSupply*vatRate;
System.out.println("VAT : "+VAT); //VAT 10%
double total = valueOfSupply + VAT;
System.out.println("Total : "+total); //소비자가 판매자에게 지불해야 하는 값
double expense = valueOfSupply*expenseRate;
System.out.println("Expense : "+expense); //물건 원가
double income = valueOfSupply - expense;
System.out.println("Income : "+income); //순익
double dividend1 = (valueOfSupply - valueOfSupply*0.3)*0.5;
System.out.println("Dividend 1 : "+dividend1); // 1 배당금
//배당금 -> 5 : 3 : 2 비율로 나눠갖기로 합의.
double dividend2 = (valueOfSupply - valueOfSupply*0.3)*0.3;
System.out.println("Dividend 2 : "+dividend2); // 2 배당금
double dividend3 = (valueOfSupply - valueOfSupply*0.3)*0.2;
System.out.println("Dividend 3 : "+dividend3); // 3 배당금
}
}
//코드 정리 후
public class AccountingApp {
public static void main(String[] args) {
double valueOfSupply = 12345.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 dividend1 = (valueOfSupply - valueOfSupply*0.3)*0.5;
//valueOfSupply*0.3 = valueOfSupply*expenseRate
double dividend2 = (income)*0.3;
//double dividend2 = (valueOfSupply - expense)*0.3;
//valueOfSupply - expense = income
double dividend3 = (income)*0.2;
//코드는 간결하게 작
System.out.println("Value of supply : "+valueOfSupply);
System.out.println("VAT : "+VAT); //VAT 10%
System.out.println("Total : "+total); //소비자가 판매자에게 지불해야 하는 값
System.out.println("Expense : "+expense); //물건 원가
System.out.println("Income : "+income); //순익
System.out.println("Dividend 1 : "+dividend1); // 1 배당금
//배당금 -> 5 : 3 : 2 비율로 나눠갖기로 합의.
System.out.println("Dividend 2 : "+dividend2); // 2 배당금
System.out.println("Dividend 3 : "+dividend3); // 3 배당금
}
}
1. 겹치는 코드 = 간결하게
2. 변수는 위측에 따로 보기 좋게 정리
728x90
반응형
'[Language] > Java | Spring | JSP' 카테고리의 다른 글
[백준]2557: Hello World (0) | 2022.04.13 |
---|---|
[생활코딩]회계 앱 만들기_입출력 프로그램 추가 (0) | 2022.04.12 |
[생활 코딩]자바 입문 (0) | 2022.04.09 |
(Java) localhost:53124 error (0) | 2022.04.09 |
JAVA debugging (자바 디버깅) (0) | 2022.04.09 |