개인 재정 배열 - 더미

배열 - 더미

비디오: 자바 코드 연습 별찍기 #1 2024

비디오: 자바 코드 연습 별찍기 #1 2024
Anonim

많은 Android 앱에서 사용되는 ArrayList 클래스는 Java 컬렉션 빙산의 일각에 지나지 않습니다. Java 라이브러리에는 많은 장점이있는 컬렉션 클래스가 많이 포함되어 있습니다. 표에는 축약 된 목록이 있습니다.

일부 Collection 클래스

클래스 이름 Characteristic
ArrayList 크기 조정 가능한 배열입니다.
LinkedList 목록의 다음

를 가리키는 필드가있는 값 목록입니다.

Stack 최상위 값에 액세스하기 위해 최적화 된

구조 (아래에서 위로 증가하는 구조).

상단에 값을 쉽게 추가하거나 상단에서 값을 제거 할 수 있습니다.

Queue 한쪽 끝 (후면)에 값을 추가하고

다른 끝 (앞쪽)에서 값을 제거하기 위해 최적화 된 구조 (한쪽 끝이 커짐).

PriorityQueue

특정 우선 순위 (높은 우선 순위)의 값을 앞쪽으로 이동시킬 수있는 큐와 같은 구조입니다.

HashSet

중복 값이없는 컬렉션입니다. HashMap
키 / 값 쌍 모음. ->
각 콜렉션 클래스는 (모든 콜렉션 클래스의 상위 클래스 인 AbstractCollection에서 상속받은 메소드 이외에) 고유 한 메소드 세트를가집니다.

배열은 색인 생성에 최적화 된 특별한 종류의 콜렉션입니다. 즉, 배열에 저장된 100 번째 값, 배열에 저장된 1, 000 번째 값 또는 배열에 저장된 1,000, 000 번째 값을 쉽고 효율적으로 찾을 수 있습니다.

package com. allmycode. 컬렉션; 공용 클래스 SimpleCollectionsDemo {public static void main (String [] args) {

String [] myArray = new String [4];

myArray [0] = "Hello"; myArray [1] = ","; myArray [2] = "독자"; myArray [3] = "!"; (int i = 0; i <4; i ++) { 시스템에 대한 아웃. print (myArray [i]); } 시스템. 아웃. println (); for (String string: myArray) {System. 아웃. print (string);}}} 이 그림은 목록에있는 코드 실행 결과를 보여줍니다. 일반 for 루프와 향상된 for 루프는 동일한 출력을 표시합니다.

목록에서 코드 실행.

목록에서 일반 for 루프는 각 색인이 대괄호로 표시된 색인을 사용합니다.모든 Java 콜렉션과 마찬가지로 초기 값 인덱스는 1이 아니라 0입니다. 배열의 선언에서 숫자 4를 주목하십시오 - "배열에 4 개의 값을 저장할 수 있습니다. "

숫자 4999는"myArray [4]에 값을 할당 할 수 있음을 나타내는

것이 아닙니다. "사실, myArray [4] ="죄송합니다! "목록에있는 코드를 실행하면 프로그램을 실행할 때 불쾌한 오류 메시지 (ArrayIndexOutOfBoundsException)가 발생합니다.

String [] myArray = new String [4] 문은 빈 배열을 만들고 myArray 변수가 빈 배열을 참조하도록합니다. 배열은 잠재적으로 4 개의 값을 저장할 수 있습니다. 그러나 초기에 변수는 값이없는 배열을 참조합니다. Java가 배열에 모든 값을 포함하는 첫 번째 할당 문 (myArray [0] = "Hello")을 실행할 때까지는 아닙니다.

배열에 저장된 100 번째 값이나 배열에 저장된 1, 000, 000 번째 값을 쉽고 효율적으로 찾을 수 있습니다. 하루의 작업에는 나쁘지 않습니다. 배열을 사용할 때의 단점은 무엇입니까? 배열의 가장 큰 단점은 각 배열이 보유 할 수있는 값의 수에 고정 된 제한이 있다는 것입니다. 목록에 배열을 만들면 Java는 4 개의 문자열 값을위한 공간을 예약합니다. 프로그램의 뒷부분에서 배열의 다섯 번째 요소를 저장하기로 결정했다면, 더 큰 배열로 만들기 위해 서툴고 비효율적 인 코드가 필요합니다. 다음 예제와 같이 배열에 필요한 크기를 과대 평가할 수도 있습니다. String [] myArray = new String [20000000];

과대 평가를하면 아마도 많은 메모리 공간을 낭비하게됩니다.

배열의 또 다른 불편한 점은 새로운 값을 삽입하는 데 어려움이 있다는 것입니다.

Emperor Constantine Comics

컬렉션에 매년 나무 상자가 있다고 상상해보십시오. 이 연작은 콘스탄티누스가 로마 제국의 머리가되었을 때 307 A. D.로 거슬러 올라갑니다.

당신은 약 6 년 (대부분 1150 년에서 1155 년까지)을 놓치고 있기 때문에 당신은 1 700 박스 밖에 가지고 있지 않습니다. 상자는 번호가 매겨지지 않았지만 길이가 200 미터 인 선에서 다른 상자 옆에 쌓여 있습니다. 이스탄불의 차고 세일에서는 1152 년 3 월부터

Emperor Constantine Comics 희귀 품을 발견합니다. 1152 년의 첫 만화에서 1151과 1153 년 사이에 더미 상자에 새 상자를 삽입해야한다는 것을 알고 있습니다. 2013 년 상자를 왼쪽으로 약 10 센티미터 이동 한 다음 2012 상자를 2013 상자를 클릭 한 다음 2012 상자 대신 2011 상자를 이동하십시오. 등등. 열렬한

황제

콘스탄틴 코믹스 컬렉터의 삶은 무심 해 지려하고 있습니다! 큰 배열의 중간에 값을 삽입하는 것은 성가신 일입니다.

배열 - 더미

편집자의 선택

플립 비디오 인형 치트 시트 - 인형

플립 비디오 인형 치트 시트 - 인형

플립 비디오 캠코더는 가장 사용하기 쉬운 캠코더입니다. 세계. 플립 비디오를 사용하면 비디오를 가리키고 촬영 한 다음 컴퓨터로 비디오를 복사 할 수 있습니다. 몇 번의 클릭 후, 당신은 Facebook, MySpace 및 YouTube에서 귀하의 작품을 과시하고 있습니다. Flip의 버튼을 해독함으로써 비디오를 고통없이 촬영하는 방법을 찾으십시오. 알아보기 ...

귀하의 디지털 필름에 대한 개인 상영 - 인형

귀하의 디지털 필름에 대한 개인 상영 - 인형

오늘, DSLR 필름 심사. HD가 장착 된 정교한 대형 스크린 TV는 여러 스피커의 서라운드 사운드 스테레오와 함께 아주 좋은 간식을 제공합니다. 따라서 영화 밤을 장소에서 쉽게 주최 할 수 있으며 영화관에 갈 수도 있습니다. ...

디지털 영화에 정적 제목을 추가하는 방법 - 인형

디지털 영화에 정적 제목을 추가하는 방법 - 인형

초연 요소는 다양한 선택을 제공합니다 DSLR 영화의 타이틀 선택 항목, 하위 3 분의 1 로케이터 정보. 로케이터 정보는 뉴스 세그먼트 및 다큐멘터리에서 장면의 사람이나 장소를 설명하는 데 사용되는 ID와 같습니다. 사람의 경우 이름과 설명이라는 두 줄로 구성됩니다. 예를 들어, Charles Dickens / Writer, ...

편집자의 선택

관계 속의 분노를 다루는 - 인형

관계 속의 분노를 다루는 - 인형

우리 모두는 때때로 파트너들과 화를 낸다. 분노가 당신과 당신의 관계에 미치는 파괴적인 영향을 최소화하는 데 도움이되는 다음 요령을 시도하십시오. 당신이 분노의 징후를 처음 알기 시작할 때, 당신의 파트너에게 무슨 일이 일어나는지 물어보십시오. 화가 난 사람을 상처 입히려 고합니다.

자폐증 진단의 영향 - 인형

자폐증 진단의 영향 - 인형

자폐아를 찾는 것이 매우 어렵습니다. 앞으로의 길은 쉬울 것이라고 아무도 말할 수 없습니다. 자녀의 생년월일과 본인의 생년월일에 관한 스크립트를 다시 작성해야 할 수도 있습니다. 당신은 지금 다루어야 할 새로운 쟁점, 압박 및 결정들을 가지고 있습니다. 그리고 주변 사람들은 ...

당신이 종속인지 결정하기 - 인형

당신이 종속인지 결정하기 - 인형

다음 증상 목록에서 확인하십시오. 당신은 모두가 공손 할 필요는 없으며, 코펜던트의 심각성 정도가 있습니다. 치료를하지 않으면 시간이 지남에 따라 코드 종속성이 악화되지만 도움을 받아 복구 할 수 있고 작업에서 훨씬 더 효과적 일 수 있습니다 ...

편집자의 선택

짧은 명상 묵상 시도 - 인형

짧은 명상 묵상 시도 - 인형

당신의 마음을 집중할 수있는 능력은 마음 챙김 명상을 통해 가장 강력하게 개발됩니다. Mindfulness 명상 중 하나는 호흡의 mindfulness입니다. 이것은 숨을 의식적으로 인식하는 것입니다. 명상을 스스로 시도하려면 다음 단계를 따르십시오. 자신의 호흡 감을 알아야합니다. 변경할 필요가 없습니다 ...

마음가짐의 세 측면 - 인형

마음가짐의 세 측면 - 인형

마음가짐은 세 가지 측면으로 주의 깊은 인식. 이 목록을 인쇄하여 핀이 무엇인지 생각 나게하십시오. 의도 - 당신의 의도는 당신이 마음가짐을 연습함으로써 얻고 자하는 것입니다. 스트레스를 줄이고 감정적 인 균형을 유지하거나 발견 할 수 있습니다.

다른 명상을 시도하십시오 - 인형

다른 명상을 시도하십시오 - 인형

명상 확장이라는 인식은 명상 확장의 중심에 있습니다. Mindfulness 명상 연습. 앉는 자리는 수천 년 동안 명상을 위해 그리고 정당한 이유로 사용되었습니다. 어떻게 평소에 앉아 있니? 당신이 대부분의 사람들과 비슷하다면, 아마 의자 나 소파 뒤에 기대어집니다. 네가 괜찮다면 ...