본문 바로가기

Dev/Java13

05-2. 다양한 함수(String 관련) 저번에는 random()함수를 알아보았는데 교육과정 중에서도 많이쓰고 알아두면 유용했던 String에 관련된 메소드를 정리해볼 계획이다. 1. charAt(index) charAt(index)은 쉽게 말해 매개변수에 있는 인덱스의 문자를 반환하는 것이다. 거두절미하고 바로 코드로 알아보면 다음과 같다 YoonYeoJin이라는 문자열의 2번째 인덱스를 가져오는 메소드이다. o가 반환되는 것을 확인할 수 있으며 charAt()안에 매개변수인 인덱스가 들어가면 해당 인덱스에 뭐가 있는지 반환해주는 메소드이다. 2. concat(String str) 문자를 합쳐주는 역할을 한다. 이 역시 코드로 바로 알아보자 출력문을 두개를 사용한 것을 볼 수 있는데 그 이유를 알아보자면 처음 str1을 출력하게 되면 최초에 .. 2023. 7. 25.
05-1. 다양한 함수(Math.random) 자바를 배우면서 무작위 숫자를 발생시키는 방법을 배웠던 적이 있다. 그와 더불어서 혹 필요할만한 함수들을 배운적이 있는데 오늘은 그 중에서 Math.random()의 기능에 대해서 알아보려고 한다. 0. Math클래스의 특징 Math 클래스의 특징은 모든 필드가 상수필드이다. 즉, 필드가 선언될 때 사진과 같이 final 키워드가 사용됨을 알 수 있다. 또한 모든 메소드가 static 메소드로 사용될 때 바로 메모리에 영역에 올라가서 사용을 할 수 있다. 1. random() 첫번째로 알아볼 메소드는 random이다. random()은 0.0 ~ 0.999.. 까지의 수를 랜덤으로 발생시키는 메소드이다. 즉, double형으로 발생시키기 때문에 우리가 사용하기 위해서는 int로 강제 형변환을 시켜줘야함을.. 2023. 7. 25.
04-2.ArrayCopy(깊은 복사) ArrayCopy - 2 얕은 복사에 이어서 깊은 복사에 대해서 알아보자 깊은 복사와 얕은 복사의 가장 큰 차이점은 원본 배열에 영향을 미치는 지에 대한 여부이다. 얕은 복사는 복사본 배열의 값을 수정하면 원본 배열의 값도 바뀌지만 깊은 복사는 복사본 배열의 값을 수정하면 원본 배열의 값은 바뀌지 않는다. 얕은 복사를 메모리 영역으로 생각하면 깊은 복사를 하게 되면 그림과 같이 arr2처럼 주소값이 아예 새로운 배열이 생성된다. 깊은 복사를 하는 방법은 크게 4가지가 있다. 1. for문 사용 for문을 사용하는 방식은 원본 배열과 복사본 배열을 각각 선언 한 후 for문을 사용해서 원본 배열의 값을 복사본 배열에 각각 대입을 해주는 방식이라 이해하면 되겠다. 애초에 각각 배열을 선언하기 때문에 다른 주.. 2023. 7. 17.
04-1.ArrayCopy (얕은 복사) ArrayCopy ArrayCopy를 배우면서 Stack, Heap에 관련된 메모리 영역을 처음으로 접하게 되었었는데 그와 같이 배웠던 것이 주소값과 관련된 내용들이었다. 깊은 복사와 얕은 복사를 다시 정리하지 않으면 배열에 대해서 응용을 잘 못할 것 같아 지금 다시 정리해보겠다! - Stack 영역과 Heap 영역 최초에 배열이 생성되면 Stack 영역에 배열의 주소값이 할당되고 Heap 영역에는 배열의 인덱스값이 저장된다. Stack영역에 주소값이 저장돼서 Heap영역에 인덱스를 참조하는 방식이다. 이 부분이 배열의 복사를 이해할 때 가장 중요한 부분이라 생각하기 때문에 항상 메모리 영역에 대한 이해가 필요할 것 같다. 메모리에 관련한 Remind 게시물도 조만간 정리해서 올려야겠다. 1. 얕은 복사.. 2023. 7. 17.
03. continue 반복문 안에 기술되는 구문은 두가지로 나눌 수 있다 첫번째 break 쉽게 설명해서 반복문을 벗어나는 역할을 하는 구문이다. 두번째는 오늘 복습해볼 continue 자바를 배울때도 말로 설명을 들으면서나 직접 실습을 해보면서도 응용하는 데 애를 먹었던 기억이 있는데 오늘 다시한번 복습 차 정리와 코드를 작성해봐야겠다. Continue? 학원을 다니면서 이해했던 방법은 반복문 내에서 continue가 나오면 밑에 내용은 싸그리 무시하고 다시 위로 올라가는 것으로 이해했다. 그렇지만 막상 적용해보려고 할 때 이해력이 부족했던건지 이해가 잘 되지 않았었다. 아무튼 continue를 간단한 실습코드와 함께 기억을 돌이켜보자 1. 1~10까지 홀수만 출력하기 사실 방법은 여러가지가 있을 수 있지만 continue.. 2023. 7. 12.
02.while / do-while 자바를 배우면서 반복문을 쓸 일이 참 많았었다. 반복문 중에서 for, while을 많이 썼었지만, do-while문도 있었는데 사실 프로젝트를 하거나 그 외 코딩테스트 연습을 하는데서도 사용하지는 않았었다. 그렇지만 복습을 하는 중에서 do-while문을 기억해보려했는데 기억이 잘 나지 않았으므로 2번째는 while과 do-while을 비교해보면서 do-while의 개념을 다시 잡아보도록 하겠다. 1. while while문을 간단하게 생각하면 조건을 만족하는 동안 실행할 코드를 반복하는 것이다. 코드로 간단하게 표현하면 으로 나타낼 수 있는데 이를 이용해서 간단하게 1부터 5까지 출력하는 코드를 작성해보고 결과를 확인해보면 다음과 같이 나타나는 것을 알 수 있다. 저기서 i++과 같이 후위연산식을 같.. 2023. 7. 12.