public bool despedir(Trabajador trabajador) { Trabajador[] copia = null; int contador = 0; if (_plantilla.Length == 1) { _plantilla = null; } else { copia = new Trabajador[_plantilla.Length - 1]; for (int i = 0; i < _plantilla.Length; i++) { if (_plantilla[i] != trabajador) { copia[contador] = _plantilla[i]; contador++; } } _plantilla = new Trabajador[copia.Length]; copia.CopyTo(_plantilla, 0); copia = null; } return(true); }
// ZONA DE METODOS public void contratar(Trabajador trabajador) { Trabajador[] copiaplantilla; if (this.plantilla == null) { this._plantilla = new Trabajador[1]; } else { copiaplantilla = new Trabajador[this._plantilla.Length]; this._plantilla.CopyTo(copiaplantilla, 0); this._plantilla = new Trabajador[copiaplantilla.Length + 1]; copiaplantilla.CopyTo(this._plantilla, 0); copiaplantilla = null; } this._plantilla[this._plantilla.Length - 1] = trabajador; //Console.WriteLine(">> SE HA CONTRATADO UN NUEVO TRABAJADOR!\n"); //ConsoleHelper.pausa(); }