我正在开发一个Swing应用程序,其中一个表单使用异常处理多个验证。知道自Java 7以来可以使用mutli-catch语句,我用它来改进我的代码,但从那时起Stacktrace始终以:
开头" java.lang.Exeption:" +处理异常消息。
如何删除此邮件的" java.lang.Exeption:" ?
以下是我的一些验证和执行的示例。
的ActionEvent:
public void actionPerformed(ActionEvent arg0){
//Validation 1
NomeGrupoVazio(string1);
//Validation 2
ValidaString(string2);
//Validation 3
DiferenciarRMs(int1, int2, int3, int4);
}
Valitadions:
private void NomeGrupoVazio(String nome) {
if (nome.isEmpty()) {
throw new IllegalArgumentException("Preencha o nome do grupo!");
}
}
private void ValidaString(String s) {
Pattern pattern = Pattern.compile("[0-9]");
Matcher matcher = pattern.matcher(s);
if (matcher.find()) {
throw new IllegalArgumentException(
"Por favor digite apenas caracteres não numéricos nos campos referentes aos nomes");
}
}
private void DiferenciarRMs(int rm1, int rm2, int rm3, int rm4) {
if (rm4 == 0) {
if (rm1 == rm2 || rm1 == rm2 || rm1 == rm3 || rm2 == rm3) {
throw new IllegalArgumentException(
"Todos os RM's precisam ser diferentes");
}
} else if (rm1 == rm2 || rm1 == rm3 || rm1 == rm4 || rm2 == rm3
|| rm2 == rm4 || rm3 == rm4) {
throw new IllegalArgumentException(
"Todos os RM's precisam ser diferentes");
}
提前致谢!
答案 0 :(得分:1)
我想,您正在使用Exception#toString()
来获取异常消息。请尝试使用Exception#getMessage()
。
Exception ex = new IllegalArgumentException("My Error Message!");
System.out.println(ex.toString());
System.out.println(ex.getMessage());
希望有所帮助。