일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 탈중화
- 자바
- 메소드
- It
- 파일 접근 권한 #linux #chown #chmond #umask #명령어
- 코딩
- Forensic #CTF #디지털포렌식 #disk forensic
- evm
- forensic
- Forensic CTF #disk Forensic #windows file analyzer #WFA #Codegate 2012 F100
- snedmail #linux #정보보안기사 #정보보안산업기사 #mail protocol
- java
- PYTHON
- CIDR #서브넷 #Network #ip 주소고갈
- 정보보안기사 #정보보안산업기사 #클라우드컴퓨팅 #보안 #컴퓨팅보안
- 디지털 포렌식
- 객체
- #정보보안 #어셈블리 #저급언어 #기계어 #it #정보보안
- 비박스 #웹취약점분석 #버그바운티 #bee-box #웹 #모의해킹
- 파이썬
- EnCase #mount #Forensic #image mount
- 디지털포렌식챌린지 #dfchallenge #디지털포렌식 #Forensic
- 정보보안기사 #정보보안산업기사 #2020년 정보보안기사 #시험일정
- 안드로이드 #스레드 #핸들러 #예제
- 디지털포렌식 연구회 워크샵 #디지털포렌식 #디지털포렌식챌린지 #Forensic #ctf #정보보호학회
- 포렌식
- Injection #Reflected #웹취약점
- 안드로이드 #서비스 #안드로이스 서비스 #Android #java
- HTML Injection #bWAPP
- 프로그래밍
- Today
- Total
Jsecurity
컬렉션 (collection) 개념 본문
※컬렉션 (collection)의 개념
-요소(element) 객체들의 저장소
#객체들의 컨테이너라고도 불림
#요소의 개수에 따라 크기 자동 조절
#요소의 삽입, 삭제에 따른 요소의 위치 자동 이동
-고정 크기의 배열을 다루는 어려움 해소
-다양한 객체들의 삽입, 삭제, 검색 등의 관리 용이
※Collections Framework - 배열과 컬렉션즈 프레임웍크
우리는 배열에 대해서 공부했다. 배열은 연관된 데이터를 관리하기 위한 수단이었다. 그런데 배열에는 몇가지 불편한 점이 있었는데 그 중의 하나가 한번 정해진 배열의 크기를 변경할 수 없다는 점이다. 이러한 불편함을 컬렉션즈 프레임워크를 사용하면 줄어든다.
요약: 배열이 갖고 있는 불편함을 벗어나려고 이용
※제네릭 이란?
특정 타입만 다루지 않고, 여러 종류의 타입으로 변신할 수 있도록 클래스나 메 소드를 일반화시키는 기법
Set – 데이터가 중복적으로 저장되지 않게 할때
List – 데이터가 중복데이터 입력이 상관 없을 때
Map – 키값의 형식인 저장방식의 컨테이너가 필요할 때 사용
키 값은 고유함, value는 중복을 허용함
※ArrayList의 사용법
import java.util.ArrayList; // 패키지를 불러온다.
public static void main (String [ ] args) {
ArrayList <String>al = new ArrayList <String>(); // 객체 생성 al
al.add(“one:); // al 배열 ”one” 데이터 추가
al.add(“two”); // al 배열 “two” 데이터 추가
al.add(“three”); // al 배열 “three” 데이터 추가
for(int i=0; i<al.size(); i++){
system.out.println(al.get(i)); // 배열의 전체를 출력
}
또는
for(int i=0; i<al.size(); i++){
String value = (String) al.get(i);
System.out.println(value);
}
}
※Hashset의 사용법
import java.util.Hashset;
public static void main(String [ ] args) {
HashSet <Integer> A = new HashSet <Integer>(); //컨테이너의 인스턴스
A.add(1); // A 배열 “1” 데이터 추가
A.add(2); // A 배열 “2” 데이터 추가
A.add(2); // A 배열 “2” 데이터 추가 (무시됨)
A.add(3); // A 배열 “3” 데이터 추가
}
Iterator hi = (Iterator) A.iterator();
while (hi.hasNext()){ // 배열의 전체를 출력
System.out.println(hi.next( ));
}
System.out.println (A.containsAll (B)); //false
System.out.println (A.containsAll (C)); //true
※HashMap의 사용법
import java.util.Collection;
public class MapDemo{
public static void main (String[] args){
HashMap<String, Integer> a = new HashMap<String, Integer>();
HashMap< key , value > a = new HashMap<>();
a.put(“one”,1); a.put(“two“,2); // a.put(“키값”,인자);
a.put(“three”,3); a.put(“four“,4);
System.out.print(a.get(“one”));
System.out.print(a.get(“two”));
System.out.print(a.get(“three”));
iteratorUsingForEach(a);
iteratorUsingIterator(a);
}
//출력방법 1
static void iteratorUsingForEach (HashMap map){
Set<Map.Entry<String, Integer>> entries = map.entrySet();
// Map -> Set 으로
for (Map.Entry<String, Integer> entry : entries ){
System.out.println(entry.getkey() + “ : ” + entry.getValue());
}
//출력방법 2
static void iterator UsingIterator(HashMap map){
Set>Map.Entry<String. Integer>> entries = map.entrySet();
Itertor<Map.Entry<String, Integer>> i = entries.iterator();
while(i.hasNext()){
Map.Entry<String, Integer> entry = I.next();
System.out.println(entry.getKey() + “ : ” + entry.getValue());
}
}
}
}
'프로그래밍언어 > Java_Language' 카테고리의 다른 글
안드로이드 앱 프로그래밍 프로젝트 생성 (0) | 2019.08.26 |
---|---|
JSP 액션태그 (0) | 2019.04.13 |
Java 9일차 : 상속(inheritance) (0) | 2018.11.14 |
Java 8일차 : static 멤버, final (0) | 2018.11.14 |
Java 7일차 : 객체 배열, 메소드, 가비지, 접근 지정자 (0) | 2018.11.08 |