기술 블로그

java 복습 4일차 본문

백엔드/JAVA

java 복습 4일차

jaegwan 2018. 9. 26. 16:29
반응형

16.자료구조

ArrayList클래스에는 sort()정렬 메소드가 없다.대신 TreeSet에 집어넣으면 정렬된다.(삽입위치를 찾느라 시간이 더 걸릴 순 있음)


혹은 Collections클래스에 있는 sort를 쓰면 된다.




제네릭을 다른방식으로 사용할 수 도 있지만 제네릭의 요점은 형 안전성을 갖춘 컬렉션을 만들 수 있다는 것이다.


제네릭을 쓸댸 


ArrayList(Fish) 

객체는 Fish객체에 대한 레퍼런스로만 들어갈 수 있따.


1
2
3
4
5
6
7
8
new ArrayList<Song>()//제네릭을 쓰는 클래스(ArrayLIst 등)의 인서턴스를 만드는 방법
//목록에 들어갈 수 있는 객체의유형을 알려줌
 
List<Song> songList = new ArrayList<Song>()//제네릭 유형의 변수를 선언하고 변수에 값을 대입하는 방법
 
void foo(List<Song> list)
 
x.foo(songLIst)//제네릭 유형을 인자로 받아들이는 메솓 선언(호출)
cs

제네릭 클래스 사용

ArrayList에서 유형 매개변수를 사용

제네릭 메소드 사용

sort()메소드에서는 Comparable객체로 구성된 목록만 받아들일 수 있다.

1
2
3
4
5
6
7
//제네릭에서 확장(extends)한다는 것은 '확장(extends)또는 구현(implements)를 뜻한다.
//Comparable은 객체다
 
public static <extends Comparable<super T>> void sort(List<T> list)
 
public final class String extends Object implements Serializable,Comparable<string>,CharSequence
 
cs


sort()메소드 중 Comparator를 인자로 받아들이는 것이 있음


List대신 Set을 쓰는것도 좋다


List-순서가 중요할 때 


Set-유일성이 중요할 때


Map- 키를 가지고 뭔가 찾는 것이 중요할 때



Hashset써보기 나중에



정렬된 상태로 유지하고싶다면 TreeSet(원소는 반드시 Comparable)


<?> 와일드카드 사용시 컴파일러에서 목록에 뭔가 추가하는 작업을 전혀 허용하지 않음


17 패키지 .jar 배포

이클립스를 이용하자



18.분산 컴퓨팅

나중에 알아보자


부록 B

  • 비트연산
  • 시프트 연산자
  • 불변성 :스트링과 래퍼가 불변성
  • 블록영역
  • 연결호출
  • 중첩클래스
    • 정적중첩클래스:다른클래스안에들어가 STATIC변경자가 붙어서 선언된 클래스
    • 내부클래스는 중접클래스의 부분집합이다. 
    • 익명내부 클래스 리스너 객체가 필요할 때
  • 접근단계와 접근변경자
    • public ㅡ 어디에 있는 어떤 코드에서도 접근 가능
    • protected ㅡ default와 거의 같음그러나 다른페키지에서도 접근할 수 있다는점 
    • defaultㅡ기본 접근 단계는 그 클래스와 같은 패키지에 들어있는 클래스에서만 접근가능
    • private ㅡ같은클래스만
  • String과 StringBuffer메소드
    • String append(Stirng)
  • 다차원 배열 
  • 1
    2
    int[][] a2d = new int [4,1,1][1,1,2];
    //2 x 3의 배열 
    cs

  • 열거형
    • 열거형(enum)
    • public enum Members {jae,kim,pis};


반응형

'백엔드 > JAVA' 카테고리의 다른 글

자바 기초 1 제어문  (0) 2018.11.03
점프 투 자바 학습계획  (0) 2018.09.26
java 복습 3일 차  (0) 2018.09.25
java 복습 2일 차  (1) 2018.09.24
자바 복습 계획  (0) 2018.09.24
Comments