일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- JS 개념
- ReactDOM.render is no longer supported in React 18. Use createRoot instead
- Spring-Framework
- 타자 게임 만들기
- intellij
- node.js로 로그인하기
- react오류
- 계산맞추기 게임
- Do it 자바스크립트 + 제이쿼리 입문
- react
- 리액트
- 인프런
- 자바스크립트
- 따라하며 배우는 노드 리액트 기본 강의
- googleColaboratory
- 모던자바스크립트
- spring-boot
- vs code 내 node
- DB Browser
- intllij 내 Bean을 찾지 못해서 발생하는 오류
- 거북이 대포 게임
- Python
- node.js 설치
- 노드에 리액트 추가하기
- You are importing createRoot from "react-dom" which is not supported. You should instead import it from "react-dom/client"
- 웹 게임을 만들며 배우는 리액트
- 모두의 파이썬
- props
- Colaboratory 글자 깨짐
- Concurrently
- Today
- Total
프로그래밍 삽질 중
컬렉션 프레임워크 (1) ArrayList 설명 및 문제 본문
※ 컬렉션 프레임 워크 특징
- 배열 사용 시 고정된 크기 → 불편함 증가 → 해결책 : 연결 리스트(LinkedList)
- 컬렉션 : 데이터를 한 곳에 모아 편리하게 저장, 관리하는 가변적인 크기의 컨테이너
- 컬레션 프레임워크 : 객체를 한 곳에 모아 효율적으로 관리하고 편리하게 사용할 수 있도록 제공하는 환경
※ 컬렉션 프레임 워크 사용 시 주의점
- 컬렉션 요소는 객체만 가능(int, char, double 등 기본타입은 자동 박싱/언박싱 시능으로 사용)
- 컬렉션은 제너릭(Generics)기법으로 사용
→ 특정 타입만 다루는 것이 아닌 여러 타입으로 변화 가능
→ <E>, <K>, <V> : 타입 매개 변수
ex) E에 특정타입으로 구체화 : 정수만 다루는 리스트 : List<Integer>
※ ArrayList<E>의 특성
- E 대싱 요소로 특정 타입으로 구체화 가능
- 객체, null, 기본타입(Wrapper 객체로 만들어 삽입) 등 삽입 가능
- 리스트의 맨 뒤에 객체 추가 : 공간이 모자라면 자동적으로 늘림
- 리스트 중간에 객체 삽입 : 삽입된 뒤의 객체는 뒤로 하나씩 이동
- 임의의 위치에 있는 객체 삭제 가능 : 객체 삭제 후 자동 자리 이동
- ArrayList 문법
: ArrayList<String> al = new ArrayList<String>();
[예시1]
키보드로 문자열을 입력받아 ArrayList에 삽입하고 가장 긴 이름 출력하기
[출력값]
이름을 입력하세요 >>
스타벅스
이름을 입력하세요 >>
이디야
이름을 입력하세요 >>
할리스
이름을 입력하세요 >>
커피빈
이름을 입력하세요 >>
공차
이름을 입력하세요 >>
드롭탑
스타벅스
이디야
할리스
커피빈
공차
드롭탑
입력한 문자 중 가장 긴 문자는 스타벅스
[예시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
|
import java.util.ArrayList;
import java.util.Scanner;
public class ArrayListEx {
public static void main(String[] args) {
ArrayList <String> al = new ArrayList<String>();
Scanner scan = new Scanner(System.in);
int longestal = 0;
for(int i=0; i<6; i++) {
System.out.println("이름을 입력하세요 >> ");
al.add(scan.next());
}
for(int i=0; i<al.size(); i++) {
System.out.println(al.get(i) + " ");
}
for(int i=0; i<al.size(); i++) {
if(al.get(i).length() > al.get(longestal).length()) {
longestal = i;
}
}
System.out.println("입력한 문자 중 가장 긴 문자는 " + al.get(longestal));
}
}
|
cs |
[예시 2]
Point 클래스 객체를 만들어 저장하는 ArrayList 작성하기
[출력예시]
Point(2, 3)
Point(3, 4)
Point(1, -6)
[예시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 | import java.util.ArrayList; import java.util.Scanner; public class ArrayListEx { public static void main(String[] args) { ArrayList <String> al = new ArrayList<String>(); Scanner scan = new Scanner(System.in); int longestal = 0; for(int i=0; i<6; i++) { System.out.println("이름을 입력하세요 >> "); al.add(scan.next()); } for(int i=0; i<al.size(); i++) { System.out.println(al.get(i) + " "); } for(int i=0; i<al.size(); i++) { if(al.get(i).length() > al.get(longestal).length()) { longestal = i; } } System.out.println("입력한 문자 중 가장 긴 문자는 " + al.get(longestal)); } } | cs |
'과거 프로그래밍 자료들 > 자바(Java)' 카테고리의 다른 글
입출력 스트림 설명 및 예시 (0) | 2021.03.10 |
---|---|
쓰레드(Thread) 설명 및 문제 (0) | 2021.03.09 |
(3)HashMap<K, V> 설명 및 문제 (0) | 2021.03.08 |
(2) LinkedList, Iterator 설명 및 문제 (0) | 2021.03.08 |
제너릭(generic) 설명 및 문제 (0) | 2021.03.08 |