Example #1
0
        public static JList <T> operator -(JList <T> listA, JList <T> listB)
        {
            JList <T> output     = new JList <T>();
            int       indexFound = listA.Find(listB);

            if (indexFound != -1)
            {
                int indexFoundEnd = indexFound + listB.Count - 1;
                for (int i = 0; i < listA.Count; i++)
                {
                    if (i < indexFound || i > indexFoundEnd)
                    {
                        output.Add(listA[i]);
                    }
                }
            }
            else
            {
                for (int i = 0; i < listA.Count; i++)
                {
                    output.Add(listA[i]);
                }
            }

            return(output);
        }
Example #2
0
        public static JList <T> operator +(JList <T> listA, JList <T> listB)
        {
            JList <JList <T> > jlists = new JList <JList <T> >();
            JList <T>          output = new JList <T>();

            jlists.Add(listA);
            jlists.Add(listB);

            for (int i = 0; i < jlists.Count; i++)
            {
                for (int j = 0; j < jlists[i].Count; j++)
                {
                    output.Add(jlists[i][j]);
                }
            }

            return(output);
        }