0

내 규칙은 다음과 같습니다가 어떻게이 샘에서 오브젝트 목록에서 변수의 목록을 얻을 수 있습니까

when 
    C : Company() 
    $empname : List() collect from (Employee($empname : empname) from C.employees) 
then 
    System.out.println($empname); 

대응 클래스 : 내 코드와

public class Company { 
    private List<Employee> employees; 
    private Stringlocation; 
} 

public class Employee { 
    private String empname; 
    private int empid; 
} 

, 나는 단지 무엇입니까 직원 개체 (Employee Objects)는 어떻게 만들지 만 empnames 목록을 얻으려면 어떻게해야합니까?

+0

왜 Java 메소드'List Company getEmpNames()'를 작성하지 않습니까? – laune

답변

0

간단한 데이터 처리 알고리즘을 속하는 클래스의 메소드로 구현하는 것이 좋습니다. 이것에 대한 규칙을 작성하는 것은 가능하지만 잘못된 도구입니다.

rule "employees" 
when 
    Company($emps: employees) 
    accumulate(Employee($name: empname) from $emps; 
       $name: collectList($name)) 
then 
    ... use List $name 
end 
+0

감사합니다. (: $ 한 EMP에서 empname) $ 이름 : 직원 ($ 이름 collectList ($ 이름)) 축적 : 지금, 나는 새로운 문제 – Anvesh

+0

규칙 "직원" 회사 (직원 $ 한 EMP)를 마주하고 다음 을 ... 목록 사용 $ 이름 끝 – Anvesh

+0

여기에 $ name에 "12345"가 포함되어 있습니다. List가 String의 유형과 비교 될 수 없으므로 작동하지 않습니다. 나는 또한 함수와 같은 drl 파일에 함수를 작성하려고 시도했습니다. boolean checkContains (List <> a, String b) { return a.contains (b);} – Anvesh

관련 문제