This is a simple program of string array and string manipulation.
I have a string array called list that has strings that represent a single line of a file that I read earlier (each line contains DNA chemical sequence like AGCTTTTCATTCT).
This getStrands() method is supposed to take out each individual line (which is a single element in list) that contains a desired substring called sequence (like "CATTCT") and put all of these lines with the sequence into another string array called result and return it.
public static string[] getStrands(string[] list, string sequence)
{
List<string> temp = new List<string>();
for (int i = 0; i < list.Length; i++)
{
string x = list[i];
if (x.IndexOf(sequence) != -1)
temp.Add(x);
}
//converts temp List into a string[] to return
string[] result = new string[temp.Count];
for (int i = 0; i < temp.Count; i++)
result[i] = temp.ElementAt(i);
return result;
}
The error: System.NullReferenceException was unhandled HResult=-2147467261 Message=Object reference not set to an instance of an object.
The error occurs at this line: if (x.IndexOf(sequence) != -1)
I checked to see if x or sequence was null, but they're not. How come when I try to see if x contains sequence, it gives me this error (I also tried the Contains() method and it gave me the same error)?