int [] lottoNumbers;
int lottoNumbers[];
int [] lottoNumbers = new int[100];
int [] lottoNumbers;
lottoNumbers = new int[100];
int [] lottoNumbers = {10,20,30,40};기본 자료형 배열의 기본값은 각 자료형의 기본값과 동일하다.
public class ArrayInitValue {
public static void main(String[] args) {
ArrayInitValue value = new ArrayInitValue();
value.referenceType();
}
public void referenceType() {
String[] strings = new String[2];
System.out.println("strings[0] = " + strings[0]);
ArrayInitValue[] arrayInitValues = new ArrayInitValue[2];
System.out.println("arrayInitValues[0] = " + arrayInitValues[0]);
}
}strings[0] = null
arrayInitValues[0] = nullfor(타입이름 임시변수명 : 반복대상객체) {
}int [] lottoNumbers = new int[100];int [] lottoNumbers = {10,20,30,40};int towDim[][];for(int oneLoop = 0; oneLoop<twoDim.length; oneLoop++ {
}public class ManageHeight {
static int [][] gradeHeights;
public static void main(String[] args) {
ManageHeight manager = new ManageHeight();
manager.setData();
for(int i=0;i<5;i++) {
System.out.println("Class No.:"+i+1);
printHeight(i);
manager.printAverage(i);
}
}
public void setData() {
gradeHeights = new int[][]{
{170, 180, 173, 175, 177},
{160, 165, 167, 186},
{158, 177, 187, 176},
{173, 182, 181},
{170, 180, 165, 177, 172}
};
}
public static void printHeight(int classNo) {
for (int data:gradeHeights[classNo]) {
System.out.println(data);
}
}
public void printAverage(int classNo) {
double ave = 0.0;
for(int data:gradeHeights[classNo]) {
ave += data;
}
ave = ave/gradeHeights[classNo].length;
System.out.println(ave);
}
}
HashMap은 내부적으로 배열을 사용합니다. hashCode 메소드가 객체의 해시 코드를 반환하며, 이를 인덱스로 사용해 배열에 값을 저장합니다. 이렇게 함으로써 객체를 검색할 때 매번 모든 값을 비교하는 것이 아니라 해당 인덱스에 저장된 값을 바로 찾을 수 있게 됩니다.
❓hashCode 메소드를 구현할 때 필요한 조건에는 어떤 것들이 있고, 이를 어떻게 충족해야하나요?
hashMap에 객체가 저장될 경우 객체마다 hashCode가 부여되는데, 이 hashCode는 list형태의 bucket에 저장된다. hashcode() 메서드 값이 같으면, bucket에 동일한 여러값이 들어갈 수 있다.
만약 hashMap에서 get() 메서드로 호출 시 여러개의 객체가 리턴될 경우 equasl()메서드를 통해 같은 값인지 비교해서 값을 리턴한다.
HashMap의 구현은 hashtable의 규칙을 기반으로 한다.
HashMap의 key(hashCode)-value쌍은 bucket이라고 불리는 내부 배열구조에 저장된다.
(hashMap의 키값이 hashcode인것을 명시)