2012-08-14 3 views
2

FOR 루프 내에서 조건이 참인 횟수를 계산하려고합니다. 템플릿 (FOUND : Integer)에 대한 추가 변수를 선언했으며 [IF] 조건이 "true"일 때마다 값을 증가 시키려고 시도했지만 변수가 처음에만 증가하고 그 다음으로 돌아갑니다 원래 값. 기본적으로 처음에 FOUND = 1이면 모든 루프에서 출력이 2가됩니다. FOR 루프 내 변수 증가시키기

내가 사용하는 코드를 시도하고있다 :

[template public genPartnerLinkJavaFile(aProcess : Process, varNameList : Sequence{String} .... etc) 
{FOUND : Integer = 1;}] 
    [file ('PL'+aPartnerLink.name.toUpperFirst()+'.java', false, 'UTF-8')] 
    public class ['PL'+aPartnerLink.name.toUpperFirst()/] { 

[for (aVariable : Variable | aProcess.eAllContents(Variable))] 
    [if (varNameList->includes(aVariable.name.toString()))] 
    [FOUND+1/] 
    [i/] 
    [/if] 
[/for] 

내가이이 식물 또는 유사한 무언가를 얻을 수있는 방법을 알고 있나요? 감사합니다.

답변

2

모든 변수는 최종 값입니다. 컬렉션을 사용하여 사용 된 모든 값을 저장 한 다음 크기를 계산하거나 실제로 값을 사용하려는 경우 자바 서비스를 사용할 수 있습니다. 쿼리 평가 결과가 캐시에 저장되므로 성능에 미치는 영향은 미미하므로 모든 유용한 요소를 계산하는 쿼리를 사용하는 것이 좋습니다.