diff --git a/README.md b/README.md
index eee9de4..23dc54b 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,13 @@
+## 다이어그램
+
+
+## 구현 기능
+- [X] 입력을 받았을 경우 사칙연산(+, -, *, /)이 가능해야 한다.
+
+- [ ] 숫자에 소수를 적용해본다.
+
+- [ ] 사칙연산 우선순위를 적용한다.
+
## 깃허브
**[java-calculator](https://github.com/programmers-lecture/java-calculator)**
diff --git a/src/main/java/stringCalculator/Calculator.java b/src/main/java/stringCalculator/Calculator.java
new file mode 100644
index 0000000..ca9c30b
--- /dev/null
+++ b/src/main/java/stringCalculator/Calculator.java
@@ -0,0 +1,30 @@
+package stringCalculator;
+
+import java.util.regex.Pattern;
+
+public class Calculator {
+
+ private static final Pattern regExp = Pattern.compile("^[0-9]*$"); //operand, operator 구분 용도
+
+ public int calculate(String[] inputExp){
+
+ int result = 0;
+ // 맨처음 숫자 더해짐
+ Operator currentOperator = Operator.PLUS;
+
+ for(String input : inputExp){
+ if(regExp.matcher(input).find()){
+ result = currentOperator.operate(result, Integer.parseInt(input));
+ continue;
+ }
+ // 연산자 매칭
+ for(Operator operator : Operator.values()){
+ if(operator.getSymbol().equals(input)){
+ currentOperator = operator;
+ }
+ }
+ }
+
+ return result;
+ }
+}
diff --git a/src/main/java/stringCalculator/Main.java b/src/main/java/stringCalculator/Main.java
new file mode 100644
index 0000000..1fcf0e5
--- /dev/null
+++ b/src/main/java/stringCalculator/Main.java
@@ -0,0 +1,19 @@
+package stringCalculator;
+
+import java.util.Scanner;
+
+public class Main {
+
+ public static void main(String[] args) {
+ Calculator calculator = new Calculator();
+ String[] input = receiveInput();
+ int result = calculator.calculate(input);
+ System.out.println("결과 : " + result);
+ }
+
+ public static String[] receiveInput() {
+ Scanner sc = new Scanner(System.in);
+ String input = sc.nextLine().replaceAll("\\s+", " ");
+ return input.split(" ");
+ }
+}
diff --git a/src/main/java/stringCalculator/Operator.java b/src/main/java/stringCalculator/Operator.java
new file mode 100644
index 0000000..ea20344
--- /dev/null
+++ b/src/main/java/stringCalculator/Operator.java
@@ -0,0 +1,26 @@
+package stringCalculator;
+
+import java.util.function.BiFunction;
+
+public enum Operator {
+ PLUS("+", (first, second) -> first + second),
+ MINUS("-", (first, second) -> first - second),
+ MULTIPLY("*", (first, second) -> first * second),
+ DIVIDE("/", (first, second) -> first / second);
+
+ private String symbol;
+ private BiFunction operation;
+
+ Operator(String symbol, BiFunction operation) {
+ this.symbol = symbol;
+ this.operation = operation;
+ }
+
+ public String getSymbol(){ return symbol; }
+
+ public int operate(int first, int second) {
+ return operation.apply(first, second);
+ }
+
+
+}