public String checkString(String value) {
Stack<Character> stack = new Stack<>();
char topStackChar = 0;
for (int i = 0; i < value.length(); i++) {
if (!stack.isEmpty()) {
topStackChar = stack.peek();
}
stack.push(value.charAt(i));
if (!stack.isEmpty() && stack.size() > 1) {
if ((topStackChar == '[' && stack.peek() == ']') ||
(topStackChar == '{' && stack.peek() == '}') ||
(topStackChar == '(' && stack.peek() == ')')) {
stack.pop();
stack.pop();
}
}
}
return stack.isEmpty() ? "YES" : "NO";
}
Я думал, что в IntelliJ есть что-то подобное, но не могу найти. Единственная очистка, которая происходит при сохранении, - это удаление пробелов на концах строк. Я думал, что должен был указать это поведение в какой-то момент, но я не вижу ничего связанного с этим.
Ctrl + Alt + L is format file (includes the two below)
Ctrl + Alt + O is optimize imports
Ctrl + Alt + I will fix indentation on a particular line
I usually run Ctrl + Alt + L a few times before committing my work. I'd rather it do the cleanup/reformatting at my command instead of automatically.
Я установил автоматическую очистку при регистрации, что обычно достаточно хорошо для меня. Если что-то будет слишком уродливым, я просто нажму ярлык ( Ctrl - Alt - L , Return ). И я вижу, что у них есть опция автоматического форматирования вставленного кода, хотя я никогда ею не пользовался.