2016-03-21 17 views
0

私はgrailsフレームワークを使用しています。これらのラインコードはサービスgroovyファイルにあります。このコードでは、マップが実装されたように見えますが、このファイルの変数に割り当てられていなければ、どのように動作するのか分かりません。私はマップがこのGroovy - 変数に割り当てられていないマップ

def map = [waferMountOrientation:waferMountOrientation, sawForModels:sawForModels, sawBladeType1:sawBladeType1] 

のようになります。期待してい

class ApprovalHeaderLEADEDService extends ApprovalHeaderService { 
    def generateTable(ApprovalHeader ah,BondingDiagram bd){ 

     def waferMountOrientation= findApprovalHeaderKitName(ah,bd,"WaferMountOrientation"); 
     def sawForModels = findApprovalHeaderKitName(ah,bd,"SawForModels"); 
     def sawBladeType1= findApprovalHeaderKitName(ah,bd,"SawBladeType1"); 

     [ 
      waferMountOrientation:waferMountOrientation, 
      sawForModels:sawForModels, 
      sawBladeType1:sawBladeType1 

     ] 
    } 

は、誰もが、これは私が地図このような場合について読むことができます任意の参照を仕事や私を提案する方法を私に説明できますか?

答えて

3

この:

def generateTable(ApprovalHeader ah,BondingDiagram bd){ 

    def waferMountOrientation= findApprovalHeaderKitName(ah,bd,"WaferMountOrientation"); 
    def sawForModels = findApprovalHeaderKitName(ah,bd,"SawForModels"); 
    def sawBladeType1= findApprovalHeaderKitName(ah,bd,"SawBladeType1"); 

    [ 
     waferMountOrientation:waferMountOrientation, 
     sawForModels:sawForModels, 
     sawBladeType1:sawBladeType1 

    ] 
} 

はこれと同じです:

def generateTable(ApprovalHeader ah,BondingDiagram bd){ 

    def waferMountOrientation= findApprovalHeaderKitName(ah,bd,"WaferMountOrientation"); 
    def sawForModels = findApprovalHeaderKitName(ah,bd,"SawForModels"); 
    def sawBladeType1= findApprovalHeaderKitName(ah,bd,"SawBladeType1"); 

    def someMap = [ 
     waferMountOrientation:waferMountOrientation, 
     sawForModels:sawForModels, 
     sawBladeType1:sawBladeType1 

    ] 
    return someMap 
} 

同じことを実証し、より簡単な例(次の方法のすべてが同じように動作します) :

def someMethod() { 
    42 
} 

def someMethod() { 
    return 42 
} 

def someMethod() { 
    def value = 42 
    value 
} 

def someMethod() { 
    def value = 42 
    return value 
} 
関連する問題