목록JAVA/TIL : JAVA (3)
OD
파이썬에서 for문으로 리스트를 탐색할 때 같은 출력 결과이지만 두 가지 방법이 있다. mudo = ['유재석', '노홍철', '정형돈', '박명수', '정준하', '하하', '길'] 먼저 무한도전 멤버 이름이 담긴 mudo라는 리스트를 탐색할 때, 1. for i in range(0, len(mudo)): print(mudo[i]) range로 리스트의 위치(0~6)에 해당되는 mudo 리스트의 값을 탐색하는 것과 2. for i in mudo: print(i) 아예 mudo라는 리스트의 0~6번째의 값 자체를 탐색하는 경우가 있었는데, 자바의 반복문을 공부하면서 자바에는 이런게 없나 하고 찾아본 결과 for-each라는 구문이 있었다! 먼저, 입문 형태로 배운 자바의 for 구문은 for(int i=..
[null, 유재석, null, null] 자바를 입문 강의로 독학하던 중 배열(Array) 파트에서 특이한 점을 발견했다. 먼저 String[] classgroup2 = new String[4]; 위와 같은 코드로 String 형식의 길이가 4인 배열을 선언한 후 classgroup2[1] = "유재석"; 배열의 1번 위치에 문자열을 할당하고 System.out.println(Arrays.toString(classgroup2)); 출력을 했을 때 [null, 유재석, null, null] 이런 식으로 출력이 되는데, 문자열은 할당이 되지 않은 빈 값은 null이 초기값이라는 것을 알게 되었다. 그 후 int, double, bool 타입의 배열을 선언한 뒤 출력 결과를 살펴본 결과 타입 별로 초기 값이..
String a = "muyaho"; String b = new String("muyaho"); System.out.println(a == b); // false System.out.println(a.equals(b)); // true a라는 변수에는 "muyaha"라는 String 변수가 할당되어 있고, b라는 변수에도 "muyaha"라는 String 변수가 할당되어 있는데, a == b를 출력하면 false가 a.equals(b)를 출력하면 true가 출력된다. 똑같은 문자열인데 왜 값이 다르게 나올까? 결론적으로, '==' 연산자는 변수가 저장된 주소 값을 비교하고 '.equals()' 메서드는 변수의 값 자체를 비교한다 이러한 차이점 때문에 출력 결과가 다르게 나타난다. 먼저 저장 방식의 차이점이..