[英]C# Programming Assignment
老師要我創建2個文件並在其中插入隨機字符。 兩個文件的長度應相同。 在一個文件中,關鍵字“ Hello”應隨機插入。
我是針對第一個文件執行此操作的:
var stringChars = new char[100];
var random = new Random();
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (int i = 0; i < stringChars.Length; i++)
{
stringChars[i] = chars[random.Next(chars.Length)];
}
我為第二個文件做了這個:
var stringChars2 = new char[100];
var random2 = new Random();
var chars2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZxxxxx";
for (int i = 0; i < stringChars2.Length; i++)
{
stringChars2[i] = chars2[random2.Next(chars2.Length)];
}
string string2 = new string(stringChars2);
string2 = string2.Replace("x", "\"Hello\"");
我的問題是我不知道如何用字符串替換技巧使兩個文件的長度相等。 第二個文件將始終更長。
這是一種面向對象的方法。 我強調這種方法,因為您必須多次執行類似的操作(兩次)。 因此,您不應該重復自己(google DRY prinicpal)。
我不會告訴您如何使用這些方法,您可以自己了解一下:
public static class StringManipulation
{
public static string GetXRandomCharacters(int x)
{
System.Text.StringBuilder sb = new System.Text.StringBuilder();
var random = new Random();
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (int i = 0; i < stringChars.Length; i++)
{
sb.Append(chars[random.Next(chars.Length)]);
}
return sb;
}
public static string InjectWordAtRandom(string str, string word)
{
var random = new Random();
int start = random.Next(str.Length - word.Length);
str.Remove(start, word.Length).Insert(start, word);
}
}
提示:我提供了靜態方法,但您不必那樣做。 嘗試從方法標題中刪除static
元素,並創建該類的實例以訪問其屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.