23/07/31(월)
숫자끼리 비교하는 연산과 문자끼리 비교하는 연산 중 왜 문자끼리 비교하는 연산이 상대적으로 불리한지 이유에 대해서 정리해보고 샘플 코드를 구현
비교할 때 사용 할 수 있는 연산자는 ==과 ===가 있다.
이때 문자열을 비교할 때는 == 연산자를 사용하면 안된다.
== 연산자는 두 개의 변수가 같은 객체를 참조하는지 확인하기 때문. 문자열은 객체이기 때문에 == 연산자는 두 문자열이 동일한 객체를 참조하는지 확인한다.
따라서 문자열을 비교할 때는 equals() 메소드를 사용해야한다.
equals() 메소드는 두 문자열의 내용이 같은지 확인한다.
그러나숫자끼리 비교할 때는 == 연산자를 사용해도 된다.
이를 샘플코드로 만들어 보면 다음과 같다.
public class Main {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "Hello";
String str3 = new String("Hello");
int num1 = 5;
int num2 = 5;
// 문자열 비교
System.out.println(str1.equals(str2)); // true
System.out.println(str1.equals(str3)); // true
// 숫자 비교
System.out.println(num1 == num2); // true
}
}
파이썬으로 일부 중복되는 element를 저장하고 최소 element가 10개이상 되는 배열을 만든다. 그리고 set() 구문 없이 오로지 for in 문으로 배열의 중복된 값을 없애는 코드를 작성하기.
arr = [10, 20, 30, 40, 50, 60, 70, 80, 90, 10, 10, 2]
new_arr = []
for i in arr:
if i not in new_arr:
new_arr.append(i)
print(new_arr)