c#编程作业
本文关键字:作业 编程 | 更新日期: 2023-09-27 18:13:38
老师要我创建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 principal)。
我不会告诉你如何使用这些方法,你可以自己弄清楚:
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
,并创建一个类的实例来访问它的属性。