boa tarde, bom queria saber qual eh o significado de ? na programação em java
tipo:
String nomeAluno = buscaDados.getString(“nome”) != null ? request.getParameter(“nome”) : “”;
Por favor, tente ser um tanto mais específico nos títulos dos tópicos, facilita bastante para quem irá ajudar e em futuras consultas.
Em relação a dúvida, ‘?’ é um operador condicional, funciona da seguinte forma.
(x > 0) ? instrução 1 : instrução 2;
(Se x maior que 0, ( ? )faça a instrução 1, ( : )senão faça a instrução 2)
No seu caso em específico:
Se getString(“nome”) for diferente de nulo, faça hetString(“nome”), senão faça “”
String nomeAluno = buscaDados.getString(“nome”) != null ? request.getParameter(“nome”) : “”;
equivaleria a algo como (isso não existe em Java, mas é uma forma fácil de entender:)
String nomeAluno = if (buscaDados.getString("nome") != null) { request.getParameter("nome") } else { "" }
ou então, o que é Java mesmo:
String nomeAluno;
if (buscaDados.getString("nome") != null) {
nomeAluno = request.getParameter("nome") ;
} else {
nomeAluno = "" ;
}
Se você já programou em VB deve conhecer o IIF, que é quase igual ao “?”, só que menos misterioso.
(Tecnicalidades - IIF do VB calcula o lado “then” e o lado “else” - ou seja, não é otimizado; o “?” do Java e do C são otimizados e funcionam como se fosse um if mesmo.