2014-09-01 39 views
0

我試圖創建一個方法,我可以傳遞一個浮點數,對其進行評估,然後相應地更新文本標籤。有人會友好地看看我的代碼,並指出我在正確的方向嗎?提前感謝...如何在不返回任何值的情況下創建方法

public static GetGrade(float wp) 
    { 
     if (wp >= 100) 
     { 
      grade_current.Text = "A"; 
     } 
     else if (wp >= 90) 
     { 
      grade_current.Text = "A"; 
     } 
     else if (wp >= 75 && wp <= 89) 
     { 
      grade_current.Text = "B"; 
     } 
     else if (wp >= 60 && wp <= 74) 
     { 
      grade_current.Text = "C"; 
     } 
     else if (wp >= 50 && wp <= 59) 
     { 
      grade_current.Text = "D"; 
     } 
     else 
     { 
      grade_current.Text = "F"; 
     } 
    } 

我試圖打電話與GetGrade(wp);

+0

你沒有得到的東西從函數返回值。該函數正在做一些事情並返回void。因此,從命名約定的角度來看,最好從函數名稱中刪除Get。函數名稱可以是SetGradeLabel等。它看起來更有意義。 – Priyank 2014-09-02 07:36:47

+0

同意,謝謝你的有見地的答覆。 – 66Mhz 2014-09-06 02:43:17

回答

3

只要使用「無效」,還可以清理一下代碼,使其更容易對眼睛:

public static void GetGrade(float wp) 
{ 
    if (wp >= 100) 
     grade_current.Text = "A"; 
    else if (wp >= 90) 
     grade_current.Text = "A"; 
    else if (wp >= 75) 
     grade_current.Text = "B"; 
    else if (wp >= 60) 
     grade_current.Text = "C"; 
    else if (wp >= 50) 
     grade_current.Text = "D"; 
    else 
     grade_current.Text = "F"; 
} 
+0

謝謝你。使用此代碼時出現以下錯誤:'錯誤非靜態字段,方法或屬性grade_current需要對象引用 – 66Mhz 2014-09-01 22:18:37

+1

因爲您的方法是靜態的。要引用你的類中的元素,請嘗試刪除「靜態」,因爲它在這裏似乎不需要。只需使用「public void GetGrade(float wp)」 – Lightor 2014-09-01 22:21:41

+0

很好用,現在看起來也好多了!再次感謝。 – 66Mhz 2014-09-01 22:30:25

2

你的方法缺少返回類型的方法。如果您不需要返回任何內容,請使用「void」。

public static GetGrade(float wp) 

=>

public static void GetGrade(float wp) 
+0

感謝您的快速回復和解釋。現在工作很好! – 66Mhz 2014-09-01 22:12:58

相關問題