2017-07-14 215 views
0

我有一種方法應該刪除字符串中的重複字符並用i字符替換j字符,但替換不起作用!我的代碼中是否有任何錯誤的陳述?替換方法不是替換字符串中的字符

public string filter(string key) 
     { 
      string answer = ""; 
      string keyEdit = key; 
      bool found = keyEdit.Contains('j'); 
      if (found) 
      { 
       keyEdit.Replace('j', 'i'); // Replace j character by i character 
      } 
      answer = new string(keyEdit.Distinct().ToArray()); // Removing duplicate characters 
      return answer; 
     } 
+6

https://msdn.microsoft.com/en-us/library/czx8s9ts(v=vs.110).aspx「*此方法不會修改當前實例的值,而是返回一個新的字符串,其中所有的oldChar被newChar替換。*「閱讀文檔是值得的。 –

+2

只是一個提示。你不必檢查字符串是否包含字符。 只要'keyEdit.Replace('j','i');'已經不替換,如果該字符不存在。 – KamikyIT

回答

6

只需更換這行:

keyEdit.Replace('j', 'i'); 

與此:

keyEdit=keyEdit.Replace('j', 'i'); 

返回其在 當前實例指定字符串的所有出現替換一個新的字符串與另一個指定的字符串MSDN