我有 2 个方法,intMethod 和 doubleMethod,它们完全相同,除了 intMethod 采用 int 数组参数,而 doubleMethod 采用 double 数组参数。
我知道我可以使用重载来使用相同的方法名称,但是,我最终还是得到了 2 个几乎相同的方法,只是它们的参数不同。无论如何我可以将 intMethod 和 doubleMethod 组合成一种方法吗?
如果是这样,你能提供一些示例代码吗?我可以通过一些示例代码更好地遵循。谢谢
编辑:人们要求我发布我的方法,然后你去:
我有一个相同的方法,readDataDouble,它的数据数组是 double[][]
基本上这种方法读取一个 CSV 文件并将数据转换为 int 格式。第一行是时间,第一列是日期。
public static void readDataInt(string value, ref int[][] data, ref DateTime[] timeframe, ref DateTime[] date)
{
string inputFile = "D:\\temp.csv";
string[][] temp = null;
if (File.Exists(inputFile))
{
string[] proRataVolumeFile = File.ReadAllLines(inputFile);
temp = new string[proRataVolumeFile.Length][];
for (int i = 0; i < proRataVolumeFile.Length; i++)
{
temp[i] = proRataVolumeFile[i].Split(',');
}
}
//convert the string to int
date = new DateTime[temp.Length - 1];
timeframe = new DateTime[temp[0].Length - 1];
data = new int[temp.Length - 1][];
for (int i = 1; i < temp.Length; i++)
{
data[i - 1] = new int[temp[i].Length - 1];
for (int j = 1; j < temp[i].Length; j++)
{
if (temp[i][j].Length > 0)
data[i - 1][j - 1] = Convert.ToInt32(temp[i][j]);
}
}
for (int i = 1; i < temp.Length; i++)
{
date[i - 1] = Convert.ToDateTime(temp[i][0]);
}
for (int j = 1; j < temp[0].Length; j++)
{
timeframe[j - 1] = DateTime.Parse(temp[0][j]);
}
}