code: public static int[] remove (int[] list, int value)
      {
          // nothing to remove from an empty list
          if (list == null) {
              return null;
          }
  
          // search for the index of the element to be removed
          int llength = list.length; // no optimizing bastards
          for (int i = 0; i < llength; i++) {
              if (list[i] == value) {
                  return removeAt(list, i);
              }
          }
  
          // if we didn't find it, we've nothing to do
          return list;
      }
docs: Removes the first value that is equal to the supplied value. A new
  array will be created containing all other elements, except the
  located element, in the order they existed in the original list.
  
  @return the new array minus the found value, or the original array.