드디어 기다리던 1주차 강의가 시작되었다.

많은 기대를 했지만, 기대 이상으로 많은 것을 배우고 느낄 수 있었다.

"Not A But B"

세상이 A인줄 알았는데 B였다. 나도 처음의 너바나님 처럼, 그리고 주변의 다른 회사원들 처럼 아무생각 없이 회사일만 열심히하고, 나중에 퇴직금을 받으면 당연히 노후 대비가 되는 줄 알고있었다. 하지만 주변의 은퇴하시는 분들을 보면 그렇지 않은 것 같았다. 너바나님도 통계 자료를 통해 월 100만원 이상 버는 65세 이상이 몇 프로인지 말씀해주셨고, 객관적인 수치를 확인하니 가슴이 두근거렸다. 그동안 잘못 생각했구나, 그동안 잘못 행동해왔구나를 느낄 수 있었다.


"전세금은 전세계에서 유일한 0%짜리 대출이다."

 

사회 초년생 때 부터 전셋집에 들어가느라 제법 많은 전세대출을 받고있다. 처음에는 1-2%의 낮은 이자였지만, 금리가 계속해서 올라가는 지금, 이자는 어느새 6%에 육박하게 되었다. 육아휴직중인 아내로 인해 외벌이 중인 요즘, 높은 금리가 점점 부담으로 다가오고 있다. 하지만 너바나님께서 말씀하신 "전세금은 전세계에서 유일한 0%짜리 대출이다"라는 말씀을 듣고 많은 생각이 들었다. 주변에 부동산 투자를 하시고, 수익을 올리신 분들이 제법 계셨지만, 한 번도 그분들께 투자에 대해 여쭤보지 않았다. 그저 대출이나 착실히 갚다보면 언젠가는 내집을 마련할 것이라는 막연한 생각만 하고 있었다. 갈수록 떨어지는 화폐가치에 맞서 내 자산을 방어하기 위해서는 투자는 필수라는 점을 다시 한 번 깨달을 수 있었다.


"위기란 현재가 위기인 줄 모르는 것.

진짜 위기란 현재가 위기인 줄 알면서도 아무것도 하지 않는 것."

 

집값은 갈수록 오르고 있고, 더 오르면 월급만 받아서는 도저히 집을 살 수가 없을 것이라는 생각이 들었다. 한 번 씩 '어차피 집을 사지 못할 거, 포기하고 좋은 차나 사볼까?' 이런 생각이 머리를 스쳐지나갔다. 앞으로 집을 못살 것이라는 위기 상황은 인지했지만, 어떻게 이 상황을 벗어날 것 인지에 대한 방법은 생각해보지 못한 것 같다. '나 뿐만 아니라 다른 사람도 집을 못살거고 그러면 언젠가는 다시 내려가겠지' 라는 생각도 들었다. 너바나님께서 말씀하신 진짜 위기의 상황에 처해있다는 것을 이번 강의를 통해 깨달을 수 있었다. 차근차근 종잣돈을 모아서 자식들에게 지금의 돈 없는 상황을 물려주고 싶지 않았다.


"Long Work, Early Start, Double Income - LED 전략"

막연히 경제적 자유를 이루고, 이른 은퇴를 하고 싶다는 생각은 하고 있었다. 비전보드 작성을 통해 지금 상황에서 내 목표금액을 달성하기 위해, 몇 살때까지 얼마의 수익률을 가져야 하는지를 알게 되었고, 계산 결과 생각보다 늦은 은퇴시기와, 많은 종잣돈이 필요하다는 것을 알게 되어 한숨이 나왔다. 너바나님께서는 월급쟁이 노후 해법으로 LED 전략을 말씀하셨다.

 

· L(Long Work) : 은퇴 시기를 늦추자

- 은퇴시기를 늦추면 필요한 노후자금이 줄어들고, 노후 자금을 더 많이 마련할 수 있다.

 

· E(Early Start) : 일찍 시작하자. 오늘이 우리 인생의 가장 젊은날!

- 어차피 50년이 걸리는 일이라면 조금이라도 일찍 시작해야 일찍 목표를 달성할 수 있다.

 

· D(Double Income) : 맞벌이

- 투자를 하기 위해서는 종잣돈 마련이 중요하다. 많은 종잣돈을 마련하기 위해서는 맞벌이는 필수이다.

 

위 LED 전략을 통해 미래에 대한 큰 그림을 그려볼 수 있었다.


생각보다 긴 강의였지만 알찬 내용으로 구성되어있어 시간가는 줄 모르고 들을 수 있었던 것 같다. 1주차 강의는 구체적인 방법 보다는 어떤 마음가짐, 어떤 습관으로 생활하고 투자에 임해야 하는지의 뼈대를 만들어준 강의라는 생각이 들었다. 너바나님께서 강의 초반에 강의를 통해 단 한 가지만이라도 변화해보라고 말씀하셨다. 이번 1주차 강의에 수많은 내용이 있었지만, 앞으로의 투자 생활을 위해 아래 두 가지만이라도 꼭 실천 해 봐야겠다고 마음먹었다.

 

1. 생각의 변화 뿐만 아니라 행동도 변화하기

2. 꾸준히 노력해서 행동을 습관으로 만들기

 

'투자' 카테고리의 다른 글

월부 실준 1주차 강의후기  (1) 2023.01.09
월부 열기 5주차 후기  (0) 2022.12.27
월부 열기 4주차 후기  (0) 2022.12.19
월부 열기 3주차 후기  (0) 2022.12.13
월부 열기 2주차 후기  (0) 2022.12.05

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

이차원 이상의 배열을 다차원 배열이라고 한다. 다차원 배열에서는 이차원 배열을 가장 많이 사용하는데, 이차원 배열은 행과 열로 구성되어 있다.

 

 

(자바(Java) 배열(Array) : https://devmoomin.tistory.com/81)

 

■ 이차원 배열의 선언과 초기화

- 자료형[][] 배열명 = new 자료형[행개수][열개수]; 와 같은 형식으로 선언이 가능하다.

- int[][] arr = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}}; 과 같은 형식으로 배열을 초기화 할 수 있다.

 

■ 이차원 배열의 접근

- 2중 for문을 통해 배열을 순회하면서 각각의 인덱스에 접근할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class Main {
    public static void main(String[] args) {
        int[][] arr = new int[][] {{12345}, {678910}};
        
        for(int i = 0; i < 2++i) {
            for(int j = 0; j < 5++j) {
                System.out.println("arr[" + i + "][" + j + "] = " + arr[i][j]);
            }
        }
        
        // arr[0][0] = 1
        // arr[0][1] = 2
        // arr[0][2] = 3
        // arr[0][3] = 4
        // arr[0][4] = 5
        // arr[1][0] = 6
        // arr[1][1] = 7
        // arr[1][2] = 8
        // arr[1][3] = 9
        // arr[1][4] = 10
    }
}
cs

Line 3 : 행의 크기 2, 열의크기 5인 정수형 배열 arr 선언 및 초기화

Line 5 : 행을 순회하기 위한 for문

Line 6 : 열을 순회하기 위한 for문

Line 7 : 배열의 값 출력

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

동일한 자료형의 변수를 여러 개 선언하여 사용해야 되는 경우가 있다. 예를 들어 학생의 수학 점수를 관리해야 되는 상황이라면 학생의 수만큼 정수형 변수를 선언해야 하는데, 배열을 통해 변수의 묶음으로 한 번에 선언하여 관리할 수 있다. 연속된 자료형이므로 반복문을 통해 각각의 변수에 접근이 가능하여 코드의 중복을 최소화 할 수 있다.

(자바(Java) 다차원 배열 : https://devmoomin.tistory.com/82)

 

■ 배열의 선언과 초기화

1) 배열의 선언

- 자료형[] 배열명 = new 자료형[개수]; 또는 자료형 배열명[] = new 자료형[개수]; 와 같은 형식으로 선언이 가능하다.

- 배열을 선언하면 자료형에 해당하는 변수가 지정한 개수만큼 생성되는데, int형 배열 5개를 선언하면 int형 4바이트 * 5가 되어 총 20바이트가 메모리에 할당된다.

- 자료형에는 int, char와 같은 기본 자료형 뿐만 아니라 사용자가 직접 정의한 참조 자료형도 사용할 수 있다.

1
2
3
4
5
6
public class Main {
    public static void main(String[] args) {
        int[] arr1 = new int[5];
        String[] arr2 = new String[5];
    }
}
cs

Line 3 : 크기가 5인 int형 배열 선언

Line 4 : 크기가 5인 String형 배열 선언

 

2) 배열의 초기화

- int[] arr = new int[] {1, 2, 3, 4, 5}; 또는 int[] arr = {1, 2, 3, 4, 5}; 와 같은 형식으로 초기화가 가능하다.

- 중괄호 안의 개수만큼 자동으로 배열이 선언되며, 선언과 동시에 초기화 할 때에는 []안에 개수를 생략해 주어야 한다.

1
2
3
4
5
6
public class Main {
    public static void main(String[] args) {
        int[] arr1 = new int[] {12345};
        int[] arr2 = {12345};
    }
}
cs

Line 3 : 크기가 5인 int형 배열 선언 후 초기화

Line 4 : 크기가 5인 int형 배열 선언 후 초기화

 

- 선언과 초기화를 따로 할 때에는 new 자료형[]을 생략할 수 없다.

1
2
3
4
5
6
public class Main {
    public static void main(String[] args) {
        int[] arr;
        arr = new int[] {12345};
    }
}
cs

Line 3 : 정수형 배열 arr 선언

Line 4 : 정수형 배열 arr 초기화

 

■ 배열의 접근

- 배열은 인덱스라는 고유의 번호를 통해 접근이 가능한데, 인덱스는 0부터 시작한다. 따라서 크기가 5인 배열을 선언한 경우 0 ~ 4의 인덱스를 사용할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public class Main {
    public static void main(String[] args) {
        String[] arr = new String[5];
        
        for(int i = 0; i < 5++i) {
            arr[i] = new String("arr" + (i + 1));
        }
        
        for(int i = 0; i < 5++i) {
            System.out.println("arr[" + i + "] = " + arr[i]);
        }
        
        // arr[0] = arr1
        // arr[1] = arr2
        // arr[2] = arr3
        // arr[3] = arr4
        // arr[4] = arr5
    }
}
cs

Line 3 : 크기가 5인 String형 배열 arr 선언

Line 5 ~ Line 7 : [0] ~ [4] 인덱스의 배열에 각각 값을 대입

Line 9 ~ Line 11 : 배열에 들어있는 값 출력

 

■ 배열의 복사

- 배열을 사용하다보면 배열의 값을 다른 배열의 값으로 복사해야하는 경우가 종종 있다. 값을 복사하는 방식에 따라 크게 얕은 복사와 깊은 복사로 나누어 진다.

 

1) 얕은 복사

- 값을 복사하는 것이 아니라 인스턴스의 주소 자체를 복사하는 경우를 말한다.

- 두 개의 배열이 하나의 인스턴스를 참조하고 있으므로, 해당 인스턴스의 값이 바뀌면 해당 인스턴스를 바라보는 배열 모두 영향을 받는다.

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
28
29
30
31
32
33
34
public class Main {
    public static void main(String[] args) {
        String[] arr1 = new String[5];
        arr1[0= "apple";
        arr1[1= "book";
        arr1[2= "coffee";
        arr1[3= "dog";
        arr1[4= "easy";
        
        String[] arr2 = arr1;
        
        for(int i = 0; i < 5++i) {
            System.out.println("[" + i + "] = " + arr1[i]);
        }
        
        // [0] = apple
        // [1] = book
        // [2] = coffee
        // [3] = dog
        // [4] = easy
        
        arr1[0= "airport";
        
        for(int i = 0; i < 5++i) {
            System.out.println("[" + i + "] = " + arr2[i]);
        }
        
        // [0] = airport
        // [1] = book
        // [2] = coffee
        // [3] = dog
        // [4] = easy
    }
}
cs

Line 3 ~ Line 8 : 크기가 5인 String형 배열 arr1 선언 후 초기화

Line 10 : arr2 배열 선언 후 arr1의 인스턴스 주소를 대입하여 초기화

Line 12 ~ Line 14 : arr1 배열의 값 출력

Line 22 : arr1 배열의 [0]번 인덱스의 값을 airport로 변경

Line 24 ~ Line 26 : arr2 배열의 값 출력 (arr2[0]의 값이 airport로 바뀐 것 확인)

 

2) 깊은 복사

- 인스턴스의 주소가 아닌 값을 직접 복사하여 서로 영향을 받지 않도록 복사하는 경우를 말한다.

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
28
29
30
31
32
33
34
35
36
37
public class Main {
    public static void main(String[] args) {
        String[] arr1 = new String[5];
        arr1[0= "apple";
        arr1[1= "book";
        arr1[2= "coffee";
        arr1[3= "dog";
        arr1[4= "easy";
        
        String[] arr2 = new String[5];
        for(int i = 0; i < 5++i) {
            arr2[i] = arr1[i];
        }
        
        for(int i = 0; i < 5++i) {
            System.out.println("[" + i + "] = " + arr1[i]);
        }
        
        // [0] = apple
        // [1] = book
        // [2] = coffee
        // [3] = dog
        // [4] = easy
        
        arr1[0= "airport";
        
        for(int i = 0; i < 5++i) {
            System.out.println("[" + i + "] = " + arr2[i]);
        }
        
        // [0] = apple
        // [1] = book
        // [2] = coffee
        // [3] = dog
        // [4] = easy
    }
}
cs

Line 3 ~ Line 8 : 크기가 5인 String형 배열 arr1 선언 후 초기화

Line 10 : 크기가 5인 String형 배열 arr2 선언

Line 11 ~ Line 13 : arr1 배열의 값을 각각 arr2 배열에 복사

Line 15 ~ Line 17 : arr1 배열의 값 출력

Line 25 : arr1의 [0]번 인덱스의 값을 airport로 변경

Line 27 ~ Line 29 : arr2 배열의 값 출력 (arr2[0]의 값에 영향 없는 것 확인)

+ Recent posts