목록Java (48)
Minwoo Dev.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bb38rg/btsF2SfWhxA/tFC4Fxm64K7HtJKUQyNB2k/img.png)
Java 는 기본적으로 객체지향 프로그래밍 언어이다. 객체지향 프로그래밍(OOP, Object-Oriented Programming) 클래스라는 묶음 안에 해당 프로그램의 속성(변수)와 기능(함수)를 넣어두고 사용하는 프로그래밍 방식이다. 강아지라는 동물에 대해서 특징을 생각해 보자. 속성, 즉 수치로 나타낼 수 있는 값은 키, 배고픈 정도, 이름 등등이 있을 것이고, 할 수 있는 행동(기능)은 짖기, 소개하기, 밥달라하기가 있을 것이다. 아래 코드를 보자, 우리가 기본적으로 사용하는 방식인 절차지향 프로그래밍이다. package test; public class DogWithoutOop { public static void main(String[] args) { int height = 50; Strin..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/biQm6Q/btsAD40Is2c/Llv0Gz3u7C7Sty3KW0eD91/img.png)
개인정보 중 일부를 비공개로 전환하는 프로그램을 작성하시오. 조건 개인정보를 비공개로 전환하는 메소드 작성 하나의 메소드에서 모든 동작 처리 각 정보는 아래 위치부터 비공개 적용 이름 : 2번째 글자 (장영실) 주민등록번호 : 9번째 글자 (991234-1234567) 전화면호 : 10번째 글자 (010-1234-5678) 정답! package chap_06; public class _Quiz_06 { public static String getHiddenData(String perNum, int num){ String result = perNum.substring(0,num); for (int i = 0; i < perNum.length() - num; i++) { result = result + "*..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oW2IS/btsArf9NIh2/fmmvXLRIEfQbhk0cmkRBH0/img.png)
메소드 오버로딩이란 여러 개의 메소드를 중복하여 사용하는 것을 의미한다. 여기서 중복하여 사용한다는 것은 매개변수, 즉 파라미터의 형식이 다른 여러 메소드를 중복할 수 있다는 것이다. import java.math.BigInteger; import java.util.Scanner; public class test { public static void printUntill(int n) { for (int i = 1; i
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dhJTGP/btsAm4gC3Az/CU1Fa3WLHPhtZpaGskqNI1/img.webp)
아마 우리는 모두 "함수"라는 개념에 대하여 알고 있을 것이다. 어떤 값을 입력하면 연산을 하여 결과값을 출력하는 일련의 과정이 함수에서 이루어진다. 위 그림은 36이라는 입력값에 4를 더하여 40이라는 값을 출력하는 함수이다. 프로그래밍에서도 함수라는 개념을 사용하는데, 프로그래밍에서의 함수는 특정 기능들을 묶어둔 집합이라고 볼 수 있다. 예를들어 인사말을 출력하는 함수가 있다면, 그 함수는 인사말을 출력할 것이다. Java에서는 이 함수를 "메소드"라는 이름으로 사용한다. public class test { public static 함수의 자료형 함수이름 (매개변수) { 실행 코드 } } 함수의 기본적인 형태이다. public static 뒤에 함수의 자료형, 함수이름, 괄호 안에 매개변수를 적는 형..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b1S3Ra/btsAr3UuKnY/geCNeImupb72TVY5p9O8x1/img.png)
문제 배열을 활용하여 쇼핑몰에서 구매 가능한 신발 사이즈 옵션을 출력하는 프로그램을 작성하시오. 조건 신발 사이즈는 250부터 295까지 5단위로 증가 신발 사이즈 수는 총 10가지 정답 public class test { public static void main(String[] args) { int[] sizeArray = new int[10]; for (int i = 0; i < sizeArray.length; i++) { sizeArray[i] = 250 + (5 * i); } for (int size : sizeArray) { System.out.println("사이즈 " + size + " (재고 있음)"); } } }
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9EPfB/btsAmvkI8xH/XEDTbwC0iqcIkJstiBESSk/img.png)
행렬을 배워본 적이 있는가 ? 요즘 교육과정에서는 배우지 않지만, 행렬은 수 또는 다항식 등을 직사각형 모양으로 배열한 것이다. 행렬의 각 값은 행렬의 i,j 로 나타낼 수 있다. 위 행렬의 이름이 A라고 할 때, 아래 사진처럼 각 위치별 값을 나타낼 수 있다. 사진을 보면, 가로 줄인 행(row)마다 앞의 수인 i 가 같고, 세로 줄인 열(column)마다 뒤의 수인 j가 같은 것을 알 수 있다. 다차원 배열이 행렬의 개념과 굉장히 비슷하다. 이전에 배웠던 배열(일차원 배열)은 가로로 긴 한줄짜리의 값 묶음이라면, 다차원 배열 중 이차원 배열은 행렬과 같이 2차원 상에 나타나지는 값들인 것이다. 컴퓨터는 인덱싱을 0부터 하므로, 2차원 배열의 각 위치를 나타내면 위와 같다. 우리는 이 2차원 배열을 J..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ciY96T/btsAmYzuFhf/kD3BAUhKhzWwcCTKLGK0Y1/img.png)
같은 자료형의 변수를 여러 개 사용할 때, 그 변수들이 비슷한 카테고리 상에 있다고 하면, 그 여러 변수들이 한꺼번에 묶여 있다면 더 편리하게 자료를 관리할 수 있을 것이다. public class test { public static void main(String[] args) { int scoreA = 89; int scoreB = 77; int scoreC = 93; } } 위의 코드는 세 학생의 점수를 나타내는 코드이다. int형의 변수 세 개로 데이터를 저장했다. public class test { public static void main(String[] args) { int[] score = new int[]{89, 77, 93}; } } 하지만 배열을 사용한다면 위처럼 간단하게 나타낼 수 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/PauXZ/btsAaOSwWth/pTyBklkK8vtdNkI4xoAsA0/img.png)
조건문을 활용하여 주차 요금 정산 프로그램을 작성하시오. 조건 주차요금은 시간당 4000원 (일일 최대 요금은 30000원) 경차 또는 장애인 차량은 최종 요금에서 50% 할인 주차요금 예시 일반 차량 5시간 주차 시 20000 원 경차 5시간 주차 시 10000원 장애인 차량 10시간 주차 시 15000원 실행결과 일반 차량 5시간 주차 시 20000원 경차 5시간 주차 시 10000원 장애인 차량 10시간 주차 시 15000원 코드 package chap_04; // 주차요금은 시간당 4000원 (일일 최대 요금은 30000원) // 경차 또는 장애인 차량은 최종 요금에서 50% 할인 // 일반 차량 5시간 주차 시 20000원 // 경차 5시간 주차 시 10000원 // 장애인 차량 10시간 주차 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bSnBEY/btsAbbfxBln/tOXtaWwskpdKgfNL1Zyqy1/img.png)
break와 함께 반복문에서 많이 사용되는 것은 Continue문 이다. 앞서 설명했던 break문은 속해있는 반복문을 종료시키는 코드였다면, continue문은 반복문에서 딱 그 시점의 조건문을 넘겨버리는 코드이다. 예시를 통해 살펴보자. public class test { public static void main(String[] args) { for (int i = 0; i < 5; i++) { if (i==2){ continue; } System.out.println("for! #"+i); } } } 위에서 i가 5보다 작은 동안 5번 반복하는 반복문 안에 i가 2일 때 continue를 수행하게 되어있다. i가 2일 때, 프로그램은 continue를 만나서 아래의 출력문을 실행하지 않고 넘어간다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bMGG3n/btsAa92E6ZD/cM6WjR7IzdKGgCfgvOZuC0/img.png)
break문은 속해 있는 반복문을 빠져나가는 데 사용됩니다. public class test { public static void main(String[] args) { int n = 7; for (int i = 0; i < n; i++) { System.out.println("M : 안녕!"); if(i==5){ System.out.println("W : 인사 좀 그만해."); break; } } System.out.println("M : 알겠어...."); } } 위 코드에서 for문안의 인사하는 출력문은 7번 반복출력되어야 합니다. 하지만 for문 내부의 if문에서 i가 5가 되는 순간, W의 말을 출력하고 break가 사용된 것을 확인할 수 있습니다. break를 사용하자 for문을 빠져나와 fo..