Ваш код работает отлично, но вы никогда не распечатать получившуюся строку:
public static void main (String args []){
String str = "abc";
str = pad (str, 10, '*');
System.out.println(str); // *** you need this
}
Побочный рекомендация: переименуйте класс TASK2. конвенции Java именование диктуют, что имена классов должны начинаться с заглавной буквой, в то время как метод и имена переменных с строчной буквой:
public class Task2 {
public static void main(String args[]) {
String str = "abc";
str = pad(str, 10, '*');
System.out.println(str);
}
public static String pad(String base, int n, char c) {
while (base.length() < n) {
base = base + c;
}
return base;
}
}
Это важно, поскольку, следуя соглашению, ваш код будет гораздо более понятным, другими кодерами Java и (что наиболее важно) вашим будущим «я».
В следующий раз, когда вы зададите вопрос о некотором коде, объясните, что вы ожидаете от него. Любой код «рано или поздно заканчивается», это не было проблемой в вашем случае. – gvlasov