2021. 04. 13(火)TIL
Java
API(Application Programming Interface)
※ final
Objectクラス
Objectクラスの主な方法
は、現在のオブジェクトと渡されたオブジェクトが同じかどうかを返します.
package object;
public class ObjectApp1 {
public static void main(String[] args) {
Person p1 = new Person(10, "홍길동", "[email protected]");
Person p2 = new Person(10, "홍길동", "[email protected]");
Person p3 = p1;
Person p4 = p2;
// boolean equals(Object obj) 메소드
// 객체 자신과 obj객체가 동일한 객체인지 여부를 반환한다
boolean result1 = p1.equals(p2);
boolean result2 = p2.equals(p1);
System.out.println("p1이 참조하는 객체와 p2가 참조하는 객체가 같은 객체인가?" + result1);
System.out.println("p2이 참조하는 객체와 p1가 참조하는 객체가 같은 객체인가?" + result2);
}
}
package object;
public class ObjectApp2 {
public static void main(String[] args) {
Person p1 = new Person(10, "홍길동", "[email protected]");
Person p2 = new Person(20, "김유신", "[email protected]");
// String toString()
// 객체에 대한 간단한 정보를 문자열로 변환한다.
// 객체의 멤버변수에 저장된 정보를 반환하도록 재정의해서 사용한다.
System.out.println(p1); // 참조변수값을 출력하면 참조변수.toString()의 반환값이 출력된다.
System.out.println(p2);
System.out.println(p1.toString());
System.out.println(p2.toString());
}
}
StringBuilderとStringBuffer
一時記憶(バッファ)があるため、append(異なるタイプのデータ)を使用して、新しいオブジェクトを作成することなく、一時記憶にデータを格納できます.
一時リポジトリに格納されたデータは、toString()メソッドを実行して文字列として提供できます.
StringBuilderとStringBufferの使い方は全く同じです.
使用例
String text = "국어" + 70 + "수학" + 80 + "영어" + 100;
// ["국어"]
// ["국어70"]
// ["국어70수학"]
// ["국어70수학80"]
// ["국어70수학80영어"]
// ["국어70수학80영어100"]
// text에 최종적으로 대입되는 값은 "국어70수학80영어100" 다.
// String객체의 불변특성 때문에 불필요한 객체 5개가 추가로 생성된다.
StringBuilder sb = new StringBuilder();
sb.append("국어"); // 버퍼에 저장
sb.append(70); // 버퍼에 저장
sb.append("수학"); // 버퍼에 저장
sb.append(80); // 버퍼에 저장
sb.append("영어"); // 버퍼에 저장
sb.append(100); // 버퍼에 저장
String finalText = sb.toString(); // 버퍼에 저장된 데이터가 전부 연결된 문자열이 반환된다.
StringBuilderを使用すると、「+」演算で接続するよりも不要なオブジェクトの作成が抑制され、メモリ効率と実行性能が向上します.
WrapperクラスとAutoBoxing/Unboxing
Wrapperクラス
|基本リソース|Wrapperクラス|
| --- | --- |
| byte | Byte |
| short | Short |
| int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
自動アセンブリ/取り外し
JAVA 1.5版で導入された機能
基本データ型とWrapperオブジェクト型の変換を自動的にサポートします.
じどうくみたて
Integer instance = new Integer(10); // 박싱
Integer instance = 10; // 오토박싱
// Integer instance = new Integer(10); // 실제로 실행되는 코드
開封する
Integer instance = new Integer(10); // 박싱
int value = instance.intValue(); // 언박싱
int value = instance; // 오토 언박싱
// int value = instance.intValue(); // 실제로 실행되는 코드
実際の使用例
public class Sample {
public void test1(int value) {
수행문
}
public void test2(Integer instance) {
수행문
}
}
public static void main(String args) {
Sample sample = new Sample();
sample.test1(1);
sample.test2(1); // 실제 실행되는 코드 sample.test2(new Integer(1));
}
Reference
この問題について(2021. 04. 13(火)TIL), 我々は、より多くの情報をここで見つけました https://velog.io/@eastgun_/2021.-04.-13화-TILテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol