2014-11-13 3 views
0

나는 다음과 같은 코드가 있습니다. 해당 연산자의 두 번째 값은 데이터베이스의 내용에 따라 변경됩니다. 나 다이아몬드 연산자의 매개 변수를 변경 동적으로 가질 수 있도록하는 솔루션동적 다이아몬드 운영자 매개 변수

tableColumn = new TableColumn<>((String)column.get("COLUMN_NAME")); 

있습니까 : 나는 데 문제는, 그것이이 라인에 tableColumn을 찾을 수 없다는 점이다? 당신이 캐스트 값을 추출 할 때

+1

당신은 변수 범위에 문제가 있습니다. 당신은하지만 더 큰 문제가있다. 제네릭은 컴파일 시간 개념 런타임 동작을 원합니다. –

+0

관련 유익한 정보) : [가변 범위 튜토리얼] (http://www.java-made-easy.com/variable-scope.html) 및 [공식 범용 튜토리얼] (https://docs.oracle.com/javase/tutorial)/java/generics /). 이들은 진행하기 전에 반드시 읽어야합니다. 그렇지 않으면 이러한 것들이 어떻게 사용되는지 (그리고 한계가 무엇인지) 이해하고 명시된 문제를 해결하기 시작하거나 (또는 ​​질문에 대한 정답을 완전히 이해하기 위해) 필요한 기본 사항을 갖추지 못할 것입니다. . –

답변

0

하나

TableColumn<String, Object> tableColumn 

을 선언하고이를 사용하지만 값의 클래스를 추적 (column.get ("DATA_TYPE")에 따라. 당신은 분기 처리에 이것을 사용할 수있다 approproate 데이터 유형.

매우 우아하지,하지만 데이터는 세 가지 유형 중 하나이기 때문에 ...