Estoy creando una aplicación de consola y tengo un "Menú" donde el usuario puede ingresar información para crear un nuevo objeto Persona. Lo siguiente está dentro de un método.
Write("Please enter the first name: ", false);
string fName = Console.ReadLine().ToUpper();
Write("Please enter the middle initial: ", false);
string mInitial = Console.ReadLine().ToUpper();
Write("Please enter the last name: ", false);
string lName = Console.ReadLine().ToUpper();
al igual que. Quiero que el usuario pueda salir del método en cualquier momento si decide que no quiere crear una nueva persona. Así que me gustaría crear un nuevo método llamado "CheckExit" y si escriben "EXIT" dejará el método "CreatePerson". Entonces quiero que el "CheckExit" devuelva un retorno. De lo contrario, tengo que agregar una declaración "if" después de cada entrada y eso se vuelve desordenado.
es posible? ¿La devolución tiene un tipo de devolución? ¿Cuál sería la forma correcta de hacer esto?
c#
console
return
return-type
Arkyris
fuente
fuente
throw exception
en el método yreturn
en el correspondientecatch
Respuestas:
return
no es un tipo que puede devolver, es una palabra clave para devolver un resultado. Desafortunadamente, lo que está tratando de hacer no es posible. Sin embargo, puede hacer que su código sea mucho más legible y ampliable mediante el uso de una serie de consultas y obtener los resultados para cada uno dentro de un bucle. Esto tiene el efecto adicional de poder agregar más consultas con facilidad.fuente
Podría crear un método para leer desde la consola para automatizar este proceso, algo así como
Entonces su código se vería así:
fuente
throw new Exception()
y atraparla. También hay una OperationCanceledException en el marco cuyo nombre quizás se ajusta a lo que está intentando hacer y podría tener sentido usar. Por lo general, lanzamos diferentes tipos de Excepción para que podamos diferenciar la captura de algunos y no de otros, pero en esencia, la única forma para que un método secundario haga un retorno del método externo es que el método secundario arroje, el externo no atrape y luego controle los retornos al método sobre el exterior / a "return return"Las declaraciones de retorno se utilizan para devolver un valor de un método que tiene un tipo de retorno. Cuando escribe un método con void como tipo de retorno, puede usar
return;
para salir del método.por ejemplo, el siguiente método usa una cadena como tipo de retorno,
Si está escribiendo un método que crea el objeto y lo devuelve al método de llamada, entonces el tipo de retorno sería la Persona (a menos que tenga la intención de hacer otra cosa). Si verifica la entrada del usuario y decide no crear una Persona, puede usarla
return null;
.Y puedes usar este método en Main,
fuente
CreatePerson
inmediato.La única forma es usarlo
return
si desea terminar el método. Pero puedes acortar tu código de esta manera:fuente