JAVA46 자바(Java)의 라이브러리 라이브러리란? 라이브러리는 프로그램을 효율적으로 개발할 수 있도록 자주 사용하는 함수나 데이터들을 미리 만들어 모아 놓은 집합체이다. 자주 사용하는 함수들의 반복적인 코드 작성을 피하기 위해 미리 만들어 놓은 것으로, 필요할 때는 언제든지 호출하여 사용할 수 있다. 프로그래밍 언어에 따라 일반적으로 도움말, 설치 파일, 샘플 코드 등을 제공한다. 라이브러리는 모듈과 패키지 모두를 의미한다. 여기서 모듈이란 하나의 기능이 한 개의 파일로 구현된 형태를 말하고 패키지는 하나의 패키지 폴더 안에 여러 개의 모듈을 모아 놓은 형태이다. 라이브러리는 프로그래밍 언어에 기본적으로 포함되어 있는 표준 라이브러리와 개발자들이 필요한 기능들을 만들어 인터넷 등에 공유해 놓은 외부 라이브러리로 나눌 수 있다. 자바(Jav.. JAVA/Theory 2023. 12. 3. 객체지향 프로그래밍 언어와 자바(Java) 객체지향 프로그래밍 언어 프로그래밍 언어는 객체지향 프로그래밍 언어와 절차적 프로그래밍으로 나누어져 있다. 객체지향 프로그래밍 언어는 현실 세계의 개체를 기계의 부품처럼 하나의 객체로 만들어, 기계적인 부품들을 조립하여 제품을 만들 듯이 소프트웨어를 개발할 때도 객체들을 조립해서 프로그램을 작성할 수 있도록 한 프로그래밍 기법이다. 절차적 프로그래밍 언어는 일련의 처리 절차를 정해진 문법에 따라 순서대로 기술해 나가는 언어이다. 자바(Java)는 이 중에서 객체지향 프로그래밍 언어에 속하며 C++과 Smalltalk 등도 이에 속한다. 객체지향 프로그래밍 언어의 특징 캡슐화 데이터(속성)와 데이터를 처리하는 함수를 하나로 묶는 것을 의미한다. 캡슐화된 객체의 세부 내용이 외부에는 은폐(정보 은닉)되어, .. JAVA/Theory 2023. 12. 3. [배열] 선택 정렬 (Selection sort) 선택 정렬이란? 제자리 정렬(in-place sorting) 알고리즘의 하나 입력 배열(정렬되지 않은 값들) 이외에 다른 추가 메모리를 요구하지 않는 정렬 방법 순서마다 넣을 위치(index)는 이미 정해져 있고, 원소를 선택하는 알고리즘 코드 package solo1; // 1. 최소값을 구합니다. // 2. 최소값과 현재 인덱스에 위치한 값을 바꿔서 정렬합니다. // 최소값과 index[0]과 스위칭 - temp에 임시로 저장 public class Selection2 { public static void main(String[] args) { // 배열의 크기를 5로 저장 int[] selArr = new int[5]; // 0번 인덱스부터 4번 인덱스까지, 총 5개의 요소를 정함 selArr[0].. JAVA/Practice 2023. 11. 29. [배열] 삽입 정렬 (Insertion sort) 삽입 정렬이란? 삽입 정렬(insertion sort)은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다. 코드 package solo1; public class Insertsort { public static void main(String[] args) { int[] arr = new int[5]; arr[0] = 100; arr[1] = 5; arr[2] = 60; arr[3] = 1000; arr[4] = 30; // [100,5,60,1000,30] for (int i = 1; i .. JAVA/Practice 2023. 11. 28. [배열] 버블 정렬 (Bubble sort) 버블 정렬이란? 버블 정렬 또는 거품 정렬은 정렬 알고리즘 중 하나이다. 시간 복잡도가 O(n^{2})로 상당히 느리지만, 코드가 단순하기 때문에 자주 사용된다. 원소의 이동이 거품이 수면으로 올라오는 듯한 모습을 보이기 때문에 지어진 이름이다. 버블 정렬의 장점 1. 코드가 단순하다. 2. 추가적인 메모리를 필요로 하지 않는다. 3. 작은 데이터셋에서는 효과적이다. 버블 정렬의 단점 1. 큰 데이터셋에서는 매우 비효율적이다. 2. 다른 정렬 알고리즘에 비해 느리다. 버블 정렬의 알고리즘 버블 정렬은 기본적으로 배열의 두 수(a, b)를 선택한 뒤, 만약 그 두 수가 정렬되었다면 놔두고 아니라면 두 수를 바꾸는 방식으로 진행된다. 오름차순으로 정렬할 때는 a>b여야 정렬된 것으로 판단한다. 이를 배열의 .. JAVA/Practice 2023. 11. 27. [배열] Random 활용 랜덤 정수를 5개 저장할 수 있는 배열이 존재 1~6까지 랜덤하게 저장 후 2가 나온 횟수와 정수들의 총합 그리고 평균을 출력 코드 public static void main(String[] args) { int[] datas = new int[5]; // 5개에 정수를 저장할 배열 할당 int count = 0; // 2의 개수를 저장할 변수 count 초기화 int total = 0; // 총합을 저장할 변수 total 초기화 double avg = 0; // 평균을 저장할 변수 avg 초기화 Random rand = new Random(); // 랜덤 숫자를 뽑기 위한 Random 클래스 사용 for (int i = 0; i < datas.length; i++) { // 배열 datas의 크기 만큼.. JAVA/Practice 2023. 11. 23. [배열] 최대값 찾기 datas 배열에 저장된 5개의 값 중에서 최대값과 index를 출력 코드 public static void main(String[] args) { int[] datas = new int[5]; datas[0] = 2; datas[1] = 3; datas[2] = 1; datas[3] = 5; datas[4] = 4; int maxIndex=0; for (int i = 1; i datas[maxIndex]) { // i번 index의 값이 maxIndex에 위치한 값보다 크다면 maxIndex = i; // maxIndex를 i로 변경 } } System.out.println("최대값은 " + d.. JAVA/Practice 2023. 11. 23. [반복문] 별 찍기 예제 1) for(int a=0;a JAVA/Practice 2023. 11. 22. [반복문] 연습 예제 1) 구구단 public static void main(String[] args) { for(int a=2;a JAVA/Practice 2023. 11. 22. [기초 및 조건문] 예제 1) 세 정수 a, b, c가 입력되었을 때, 짝수만 출력해보자. public static void main(String[] args) { int a=5, b=7, c=30; // 정수형 변수 a, b, c 초기화 if(a%2==0) { // a를 2로 나눈 값이 0이라면 System.out.println(a); // a 출력 } if(b%2==0) { // b를 2로 나눈 값이 0이라면 System.out.println(b); // b 출력 } if(c%2==0) { // c를 2로 나눈 값이 0이라면 System.out.println(c); // c 출력 } } 결과값 예제 2) 두 정수의 크기를 비교하여 a가 크면 > 를 출력, b가 크면 < 를 출력, 같으면 = 을 출력하시오. public .. JAVA/Practice 2023. 11. 21. 이전 1 2 3 4 다음