이게 뭐야? [Ljava.lang]오브젝트;
내가 전화했을 때 이걸 받았어toString
함수 호출에서 받은 객체에 대해 설명합니다.이 문자열에 인코딩된 개체 유형은 알지만 읽는 방법은 모릅니다.
이런 종류의 부호화란 무엇입니까?
[Ljava.lang.Object;
의 이름입니다.Object[].class
, 의 배열 클래스를 나타냅니다.Object
.
명명방식은 에 기재되어 있습니다.
이 클래스 객체가 배열 유형이 아닌 참조 유형을 나타내는 경우 Java Language Specification(「13.1」)에서 지정된 대로 클래스의 바이너리 이름이 반환됩니다.
이 클래스 개체가 원시 유형을 나타내는 경우 또는
void
반환되는 이름은 기본 유형에 대응하는 Java 언어 키워드입니다.void
.이 클래스 객체가 배열 클래스를 나타내는 경우 이름의 내부 형식은 하나 이상의 요소 유형 이름 앞에 표시됩니다.
'['
어레이 네스트의 깊이를 나타내는 문자.요소 유형 이름의 인코딩은 다음과 같습니다.Element Type Encoding boolean Z byte B char C double D float F int I long J short S class or interface Lclassname;
당신의 것이 그 리스트의 마지막입니다.다음은 몇 가지 예입니다.
// xxxxx varies
System.out.println(new int[0][0][7]); // [[[I@xxxxx
System.out.println(new String[4][2]); // [[Ljava.lang.String;@xxxxx
System.out.println(new boolean[256]); // [Z@xxxxx
그 이유는toString()
배열에 대한 메서드 반환String
이 포맷은 어레이가 다음 명령을 실행하지 않기 때문입니다.@Override
계승된 방법Object
는 다음과 같이 지정됩니다.
class 메서드는 객체가 인스턴스인 클래스의 이름, at-sign 문자 "@" 및 객체의 해시 코드의 부호 없는 16진수 표현으로 구성된 문자열을 반환합니다.즉, 이 메서드는 다음 값과 동일한 문자열을 반환합니다.
getClass().getName() + '@' + Integer.toHexString(hashCode())
주의: 다음 항목에 의존할 수 없습니다.toString()
임의의 오브젝트가 상기의 사양을 따르는 것은 그들이 할 수 있기 때문이다(통상 할 수 있기 때문이다).@Override
다른 걸 돌려주기 위해서요임의의 오브젝트의 타입을 검사하는 보다 신뢰성 높은 방법은 오브젝트에서 호출하는 것입니다(a).final
계승된 방법Object
그리고 나서 반환된 내용을 반영합니다.Class
물건.단, API는 리플렉션이 필요하지 않도록 설계되어야 합니다(Effective Java 2nd Edition, Item 53: Reflection보다 인터페이스 선호 참조).
보다 「유용한」으로toString
어레이용
java.util.Arrays
제공하다toString
기본 어레이의 과부하 및Object[]
다 . . .라는 것도 있어요.deepToString
이치노
다음은 몇 가지 예입니다.
int[] nums = { 1, 2, 3 };
System.out.println(nums);
// [I@xxxxx
System.out.println(Arrays.toString(nums));
// [1, 2, 3]
int[][] table = {
{ 1, },
{ 2, 3, },
{ 4, 5, 6, },
};
System.out.println(Arrays.toString(table));
// [[I@xxxxx, [I@yyyyy, [I@zzzzz]
System.out.println(Arrays.deepToString(table));
// [[1], [2, 3], [4, 5, 6]]
, 또다있 there라는 것도 .Arrays.equals
★★★★★★★★★★★★★★★★★」Arrays.deepEquals
어레이와 관련된 다른 많은 유틸리티 방법 중 요소별로 어레이 균등성을 비교합니다.
관련 질문
- Java Arrays.equals()는 2차원 배열에 대해 false를 반환합니다. -- 상세 커버리지
Liquibase 오류로 인해 다음과 같은 메시지가 표시될 경우:
Caused By: Precondition Error
...
Can't detect type of array [Ljava.lang.Short
사용하고 있습니다.
not {
indexExists()
}
프리컨디션이 여러 번 반복되면 오래된 버그가 발생합니다.https://liquibase.jira.com/browse/CORE-1342
할 수 있습니다.sqlCheck
(후기):
SELECT COUNT(i.relname)
FROM
pg_class t,
pg_class i,
pg_index ix
WHERE
t.oid = ix.indrelid
and i.oid = ix.indexrelid
and t.relkind = 'r'
and t.relname = 'tableName'
and i.relname = 'indexName';
서 ''는tableName
는 색인 입니다. - 은 색인 테이블 이름입니다.indexName
는입니다. - 는 색인 이름입니다.
언급URL : https://stackoverflow.com/questions/3442090/what-is-this-ljava-lang-object
'programing' 카테고리의 다른 글
람다 식 및 일반이 메서드에만 정의됨 (0) | 2022.10.09 |
---|---|
MySQL에서 현재 시간에 2시간을 추가하시겠습니까? (0) | 2022.10.09 |
MariaDB를 사용하여 도커라이즈된 Django REST Framework 백엔드를 실행하는 방법 (0) | 2022.10.09 |
쿼리를 최적화하기 위해 타임스탬프에 인덱스 만들기 (0) | 2022.10.09 |
phpMailer 및 PHP를 사용하여 양식에서 첨부 파일 보내기 (0) | 2022.10.09 |