Почему этот код не генерирует исключение? Пытались много вещей, но когда я проверить его с классом JUnit, как это, например, он не будет сгенерировано исключение:Конструктор не бросает новое исключение?
Vehicle e = new Vehicle('C', 'G', "A1234");
// Constructor
public Vehicle(char kType, char dType, String regNr) {
String temp0 = regNr.substring(0, 2);
String temp = regNr.substring(2);
boolean finish = false;
if ("" + kType == "C") {
for (char c : temp0.toCharArray()) {
if (Character.isDigit(c)) {
throw new IllegalArgumentException("3");
}
}
if (temp.length() == 5) {
finish = true;
} else {
finish = false;
throw new IllegalArgumentException("4");
}
try {
Integer.parseInt(temp);
} catch (NumberFormatException nfe) {
finish = false;
throw new IllegalArgumentException("5");
}
}
}
'if (" "+ kType ==" C ")' ??? Почему не просто 'if (kType == 'C')'? –
@barakmanos Чтобы сделать весь код бессмысленным? – GhostCat
Кроме того: вы хотите, чтобы мы провели ** наше ** время, чтобы помочь вам. Итак, ** вы ** потратите 1 минуту, чтобы правильно форматировать/отступать исходный код; вместо того, чтобы сбрасывать этот ** беспорядок ** на нас. – GhostCat