본문 바로가기
728x90
반응형

Java59

[Java Basic] 11. 입력값 받기 - System.in과 Scanner 클래스 지금까지 Java의 기본적인 내용을 포스팅하면서, 변수를 생성하고 출력하는 부분에 대해서만 예시로 많이 보여주었는데, 사용자를 위해 개발되는 프로그램을 떠올려보면 사용자로부터 값을 입력받아 동작해야하는 부분이 꽤 많다. 예를 들면 프로그램 사용을 위해 로그인을 할 때 ID나 비밀번호를 입력하거나, 프로그램 내에서 키워드를 이용하여 저장된 정보를 조회하거나 변경하는 등의 작업 등등등... 이번 포스팅에서는 Java 프로그램의 기본 사용 마지막 내용인 "키보드로 값 입력 받기"에 대해 알아보려 한다. 1. 프로그램에서 키보드로 값 입력 시 컴퓨터에서 일어나는 일들. 키보드로 값을 입력받는 것은 어떠한 과정을 통해 이루어질까? 필자가 어떠한 프로그램에서 키보드로 'Hello'를 입력하면 입력한 'Hello'라.. 2022. 7. 3.
[Java Basic] 10. 배열 4 - 다차원배열 프로그래밍 단어를 물리적 또는 수학적으로 변환해보자. 변수는 하나의 점과 같고, 연관 변수의 모임인 배열은 변수(점)가 모여 형성된 것이므로 마치 선과 같은 형태를 띈다. 선이 모이면 면이 형성되는데, 프로그래밍에서도 배열(선)이 모이면 마치 면과 유사한 형태의 결과가 출력된다. 이 면과 같은 형태는 프로그래밍에서 다차원 배열이라는 것으로 구현할 수 있다. 이번 포스팅에서는 Java 다차원 배열에 대해 간단히 알아보려 한다. 1. 다차원 배열과 메모리 할당 일반 배열. 즉 일차원 배열의 메모리 형태는 아래와 같이 나타난다. 이러한 배열이 하나 더 추가된다고 가정해보자. 만약 arr과 arr2 배열변수에 대한 연산을 진행하는 작업이 빈번하다고 하면, 이 두 변수를 하나의 배열로 묶어주는 것도 가능할 것이다.. 2022. 7. 2.
[Java Basic] 9. 배열 3 - 문자열 배열과 String 타입 지금까지 Java 배열과 관련된 2 개의 포스팅에서, 필자가 예시로 정수형 배열만 사용했는데, 문자형 타입 역시 배열로 지정할 수 있다. 문자형 배열의 경우 정수형 배열과 차이점이 몇 가지 있는데, 이번 포스팅에서는 Java의 문자열 배열과 이와 관련있는 String 타입에 대해 포스팅을 진행해보려 한다. 1. 문자형 배열 및 String 타입 생성 문자열 배열 역시 정수형 배열과 동일한 방식으로 생성하면 된다. 배열의 생성은 이 포스팅을 참고하자. 다음은 String, 문자열 타입의 생성에 대해 알아보자. String 타입 역시 배열과 마찬가지로 참조형 변수이므로, 변수 생성 시 배열과 유사한 포맷으로 진행하면 된다. 단, 문자열 리터럴 값은 반드시 쌍따옴표로 둘러쌓인 상태로 초기화를 진행해야 한다. .. 2022. 7. 1.
[Java Basic] 8. 배열 2 - 배열 관련 작업 배열은 연관있는 데이터를 묶어놓은 타입이다. 학생들의 시험 과목 점수 등 통계가 필요한 부분에서 많이 사용한다. 따라서 배열을 총합, 평균 구하기와 같이 간단한 산술 뿐만 아니라 데이터의 정렬 등의 작업에 많이 사용한다. 지난 포스팅에서 언급했듯이 배열을 다루기 위해 for문을 많이 사용하는데, 배열마다 자주 사용하는 작업을 매번 코드로 사용하기에는 번거로운 점이 많기 때문에 Java에서는 java.lang 패키지 내의 Array 클래스에 일부 작업을 수행할 메서드를 미리 구성해놓았다. 아직 패키지, 클래스, 메서드에 대한 포스팅을 진행하지 않았으나, 배열 작업을 일일히 코딩하지 않고 할 수 있는 방법이 있다고 우선 알아두면 될 듯 하다. 1. 정수형 배열 총합 구하기 지난 포스팅 마지막 부분에서 필자가.. 2022. 6. 30.
[Java Basic] 7. 배열 1 - 선언, 초기화, 생성, 향상된 for문 프로그래밍 언어에서 배열은 연관성을 가지는 데이터의 묶음이다. 예를 들어 어느 학급 세 학생의 국어, 영어, 수학 성적을 저장하고 출력해야한다고 해보자. 배열이 존재하지 않는 상태라면 아래와 같이 변수 선언을 진행해야 할 것이다. 학생 수와 과목수가 늘어난다면, 출력은 고사하고 점수 입력만으로도 상당한 시간이 소요된다. 또한 각 점수를 저장하는 변수가 메모리의 여기저기에 흩어져 저장되기 때문에 각 학생의 시험 성적 총합과 평균을 구하는 연산에서도 시간이 소요될 수 밖에 없다. 배열을 사용하면, 연관이 있는 데이터들을 조금 더 효율적으로 다룰 수 있다. Python에서 사용하는 List, Tuple, Dictionary 들도 전부 배열로부터 파생된 배열 자료형이라 보면 된다. Python을 사용해보셨던 분.. 2022. 6. 28.
[Java Basic] 6. 루프(Loop)문 - for, while 문 이번 포스팅에서는 Java의 루프문에 대해 알아보려 한다. 루프(Loop)라는 이름에서 알 수 있듯이 이 문법은 대부분의 프로그래밍에서 반복작업을 할 때 사용한다. 가장 유명한 루프문으로는 for문과 while 문이 있다. 프로그래밍 입문 시 구구단 출력 예제에서 골머리를 아프게 만드는 초급 빌런(?) 역할을 하고 있다. 뻘소리 좀 했다. 바로 시작해보자. 1. for 문 이전의 Java 포스팅에서도 계속해서 언급하는 내용이지만, Java는 C언어를 기반으로 만들어진 언어라 C와 유사한 형태를 띈다. 그래서 Python의 for 문에 익숙한 분들이라면 Java의 for 문이 매우 낯설게 느껴질 수 있다. Java에서의 for 문은 아래의 형태로 사용한다. for (통제변수선언; 통제변수에 대한 조건; 통.. 2022. 6. 27.
[Java Basic] 5. 조건식 - if, else, switch 프로그래밍 언어에서 조건 식은 분기가 필요한 부분에서 사용된다. 예를 들어, 프로그램에 정보를 입력하는 사용자의 성별을 '남', '여'로 구분하거나, 입력한 자택 전화번호를 통해 지역번호와 거주하는 행정 구역을 확인하는 등의 작업에서 말이다. 다른 프로그래밍 언어를 접해보았다면 문법적인 차이만 있을 뿐 사용하는데 큰 어려움이 없다. 하지만 처음 프로그래밍을 접하는 분들이라면... 조건식 예제를 많이 작성해보고 작성한 코드가 어떤 논리로 동작하는지 확인하면서 학습하는 것이 좋다. 컴퓨터에 숙달되지 않은 인간의 논리로는 은근히 우리가 원하는대로 컴퓨터를 일 시키기 힘들다. 각설하고.. 조건식에 대해서 알아보자. 1. Java 조건식 분기에 사용되는 문법의 종류 - if문, switch문 Java의 조건식 분.. 2022. 6. 27.
[Java Basic] 4. Java 연산자 프로그래밍에서 사용하는 연산자는 대부분 비슷비슷하다. Java의 경우 C언어로부터 파생된 언어라 최근 각광받는 Python에 비해 옛날에 사용하던 연산자가 조금 더 추가되어 있긴 하지만 원리만 제대로 기억한다면 크게 어려운 내용은 아니다. 이번 포스팅에서는 Java에서 사용하는 연산자의 구분 및 연산자 사용과 관련한 내용에 대해 작성해보려 한다. 1. Java의 연산자 Java의 연산자는 여러 종류로 나뉜다. 연산에 사용하는 피 연산자의 수에 따라 단항, 이항, 삼항 연산자로 분류할 수 있으며, 연산 기호에 따라 산술, 비교, 논리, 대입 연산자로 나뉜다. 2. 피연산자 수에 따른 연산자 종류 (1) 단항 연산자 단항 연산자는 하나의 피연산자에 연산 기호가 붙는 형태를 띈다. 주로 음수 및 양수의 선언 .. 2022. 6. 25.
[Java Basic] 3. 화면 출력과 형 변환(Type Casting) 프로그래밍 언어에서 화면에 글자를 출력하는 코드는 굉장히 직관적이다. Python의 경우 print() 함수, C언어는 stdio.h 파일에 포함된 printf() 함수를 사용함으로써 지정한 변수 값을 화면에 출력한다. 하지만 Java의 경우, 화면 글자 출력에 사용하는 함수 종류가 하나로 제한되지 않으며, 출력을 위해 작성하는 코드도 Python이나 C와 비교하면 조금 복잡한 편이다. 이번 포스팅에서는 Java에서 화면에 변수와 글자를 출력하는 함수에 대해서, 그리고 화면 출력 함수를 통해 변수의 형 변환이 일어나는 부분에 대해서도 확인해보려 한다. 1. Java 출력 함수 Java에서 화면 출력에 사용하는 함수는 크게 세 가지가 있다. - print(변수 또는 "출력문자") - printf(변수 또는.. 2022. 6. 23.
[Java Basic] 2. 변수 선언 프로그래밍에서의 변수는, 어떠한 값을 저장하는 메모리 공간을 의미한다. 필자가 Python을 많아 사용하기도 했고, Python 관련 포스팅이 많아 Python을 예로 들어보자면, Python에서 a = 1 이라는 변수를 선언하면, 메모리에는 1이라는 정수값을 저장하기 위한 4 Byte 메모리 공간의 이름이 a로 할당되고, 여기에 1을 의미하는 00000000 00000000 00000000 00000001 이라는 4 Byte, 32 bit 값이 저장되는 것이다. Java에서 사용하는 변수 역시, Python의 변수 저장법과 크게 다르지는 않다. 하지만 선언 부분에서 Python과 큰 차이가 하나 존재하는데, 변수에 저장되는 값의 Type 형을 변수 선언 시 명시해주어야 한다. 그리고 변수의 Type 명.. 2022. 6. 21.
[Java Basic] 1. Java 구성 및 Java 코드의 동작 과정 Java는 프로그래밍 언어 중 하나이며 서버, 웹 프로그래밍 등 다양한 분야에서 활용되고 있다. 특히 국내 IT 업체의 경우 전자정부프레임워크라는 녀석으로 인해 공공기관에 들어가는 대부분의 어플리케이션이 Java와 Spring(웹 프레임워크)로 획일화되어, 개발자 양성 학원에서도 머신러닝이나 빅데이터처럼 특정 언어를 사용하는 과정이 아니라면 - 취업률 향상을 위해 - 대부분 Java를 기본으로 교육하고 있다. 여러 포스팅에서 밝혔듯이 필자는 최근 개발쪽으로 전직이 되었으나, 필자의 주력은 Linux Bash와 Python 이다. Java를 배우지 않아도 되는 환경이라면 상관이 없겠지만, 필자가 해외로 나갈 것이 아닌 이상 - 해외에서는 국내와 달리 다양한 언어 생태계가 존재한다 - Java도 분명 익숙해.. 2022. 6. 20.
728x90
반응형