«instanceof» 태그된 질문

instanceof는 Java, php 및 JavaScript를 포함한 일부 객체 지향 언어에서 사용할 수있는 연산자입니다. 일반적으로 프로그래머는 왼쪽 피연산자로 전달 된 객체가 오른쪽 피연산자로 지정된 클래스의 인스턴스인지 여부를 확인할 수 있습니다.

8
Java에서 instanceof 피하기
일련의 "instanceof"작업을 갖는 것은 "코드 냄새"로 간주됩니다. 표준 대답은 "다형성 사용"입니다. 이 경우 어떻게해야합니까? 기본 클래스에는 여러 하위 클래스가 있습니다. 그들 중 누구도 내 통제하에 있지 않습니다. 유사한 상황은 Java 클래스 Integer, Double, BigDecimal 등입니다. if (obj instanceof Integer) {NumberStuff.handle((Integer)obj);} else if (obj instanceof BigDecimal) {BigDecimalStuff.handle((BigDecimal)obj);} else if (obj instanceof …

6
반사를 사용하지 않고 객체가 배열인지 확인하는 방법은 무엇입니까?
리플렉션을 사용하지 않고 객체가 배열인지 Java에서 어떻게 볼 수 있습니까? 리플렉션을 사용하지 않고 모든 항목을 어떻게 반복 할 수 있습니까? Google GWT를 사용하므로 리플렉션을 사용할 수 없습니다. 반성을 사용하지 않고 다음 메서드를 구현하고 싶습니다. private boolean isArray(final Object obj) { //??.. } private String toString(final Object arrayObject) { //??.. } …
99 java  arrays  gwt  instanceof 

4
TypeScript의 'instanceof'에서 " 'Foo'는 유형 만 참조하지만 여기서는 값으로 사용되고 있습니다."라는 오류가 표시되는 이유는 무엇입니까?
이 코드를 작성했습니다 interface Foo { abcdef: number; } let x: Foo | string; if (x instanceof Foo) { // ... } 그러나 TypeScript는 다음과 같은 오류를주었습니다. 'Foo' only refers to a type, but is being used as a value here. 왜 이런 일이 발생합니까? instanceof내 값에 주어진 유형이 있는지 …


2
'instanceof'연산자는 인터페이스와 클래스에 대해 다르게 작동합니다.
instanceofJava에서 연산자의 다음 동작에 대해 알고 싶습니다 . interface C {} class B {} public class A { public static void main(String args[]) { B obj = new B(); System.out.println(obj instanceof A); //Gives compiler error System.out.println(obj instanceof C); //Gives false as output } } 왜 그래야만하지? 이 사이에 아무 관계 …

7
Java에 instanceOf (Class <?> c)와 같은 것이 있습니까?
객체 o가 클래스의 인스턴스 C인지 또는의 하위 클래스 인지 확인하고 싶습니다 C. 예를 들어, 만약 p클래스입니다 Point내가 원하는 x.instanceOf(Point.class)것으로 true도 x.instanceOf(Object.class)수 true. boxed primitive 유형에서도 작동하기를 원합니다. 예를 들어, 만약 x인은 Integer다음 x.instanceOf(Integer.class)되어야한다 true. 그런 것이 있습니까? 그렇지 않다면 어떻게 그러한 방법을 구현할 수 있습니까?


6
개체가 매개 변수 유형의 인스턴스인지 테스트
객체가 제네릭 유형의 인스턴스인지 확인하는 방법이 있습니까? public &lt;T&gt; test(Object obj) { if (obj instanceof T) { ... } } 그것은 분명히 작동하지 않습니다. 대안이 있습니까? Java 리플렉션을 사용하여 클래스를 인스턴스화 한 다음 generic 형식인지 확인하고 싶습니다 T.

3
스트림에서 instanceof 확인
다음식이 있습니다. scheduleIntervalContainers.stream() .filter(sic -&gt; ((ScheduleIntervalContainer) sic).getStartTime() != ((ScheduleIntervalContainer)sic).getEndTime()) .collect(Collectors.toList()); ... scheduleIntervalContainers요소 유형이 있는 위치 ScheduleContainer: final List&lt;ScheduleContainer&gt; scheduleIntervalContainers 필터 전에 타입을 확인할 수 있습니까?
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.