A resposta de @jjnguy está correta na maioria das circunstâncias. Você nunca verá uma null
String na matriz de argumento (ou uma null
matriz) se main
for chamada executando o aplicativo é executado a partir da linha de comando da maneira normal.
No entanto, se alguma outra parte do aplicativo chama um main
método, é concebível que passe um null
argumento ounull
array de argumentos.
No entanto (2), este é claramente um caso de uso altamente incomum, e é uma violação flagrante do contrato implícito para um main
método de ponto de entrada. Portanto, não acho que você deva se preocupar em verificar os null
valores dos argumentos em main
. No caso improvável de que ocorram, é aceitável que o código de chamada obtenha um NullPointerException
. Afinal, é um bug do chamador violar o contrato.
null
verificação é desnecessária, mas você está certo de que alength
verificação é necessária,