public static void outputDetail(DateTime previousTime, ref double[] array, StreamWriter streamWriter) //the parameter in here is not necessary, but want to maintain a similiarity in the TimeOfDay class
{
string outputString = previousTime.ToString("yyyy/MM/dd");
Boolean bypass = true;
for (int i = 1; i < array.Length - 1; i++)
{
outputString = outputString + "," + array[i].ToString();
if (array[i] != 0)
bypass = false;
}
if (bypass == false)
streamWriter.WriteLine(outputString);
for (int i = 0; i < array.Length; i++)
{
array[i] = 0;
}
}
public static void outputDetail(DateTime previousTime, ref int[] array, StreamWriter streamWriter) //the parameter in here is not necessary, but want to maintain a similiarity in the TimeOfDay class
{
string outputString = previousTime.ToString("yyyy/MM/dd");
Boolean bypass = true;
for (int i = 1; i < array.Length -1; i++)
{
if (array[i] != 0)
{
outputString = outputString + "," + array[i].ToString();
bypass = false;
}
else
{
outputString = outputString + ",";
}
}
if (bypass == false)
streamWriter.WriteLine(outputString);
for (int i = 0; i < array.Length; i++)
{
array[i] = 0;
}
}
они точно такие же, только один берет двойной массив и принимает массив int, я вижу, что в каком-то примере используется Iconvertible, но я не могу получить синтаксис правильно. может ли кто-нибудь опубликовать некоторый рабочий фрагмент для метода pls?как мне реорганизовать эти 2 метода?
как можно назвать это?
EDIT: спасибо большое за ответ, у меня есть еще один более сложный случай, который мне нужен для рефакторинга, и предложение здесь не работает над этими двумя методами. Пожалуйста, нажмите на эту ссылку подробнее
How do I refactor these 2 methods? Part 2.
Вы можете использовать «достаточно новый» динамический ключевое слово для это вместо типа, лично не большой поклонник этого, но это возможность. – Viezevingertjes
Да, я бы тоже использовал динамику. Боль в том, что числа не имеют общего корня, но передача второго аргумента в качестве массива динамических элементов могла бы сделать трюк. –