java equalsignorecase



Автор Алексей Олегович Павленко задал вопрос в разделе Другие языки и технологии

Вопрос по Java №10 и получил лучший ответ

Ответ от Павел Ефремов[гуру]
1. StringBuffer обладает не всеми функциями строки. Поэтому надо было написать reverse1.toString().equalsIgnoreCase(word))
2. Это делать бесполезно, так как equalsIgnoreCase() работает через регулярные выражения, которые понимают только ASCII.
3. Можно было бы применить string.toUpperCase, но вот беда, нет Locale.RU
4. Поэтому придётся преобразование писать ручками.
Павел Ефремов
(2757)
в Яве нет коллекций с примитивными типами, поэтому или пусть в программе используются Integer, или придётся руками перевести их в массив. Но осторожно! Оболочки едят память (heap). Поэтому, если коллекция будет существенно использоваться, то лучше преобразовать её в массив примитивных значений.
Итого.
Если чисел заведомо 5, то лучше использовать массив.
Если неизвестно, то завести коллекцию, к примеру ArrayList<integer>, занести в неё ввод пользователя, а потом пройтись по ней и перенести всё в int[].
Дальше хуже, потому что прочитать и понять это через месяц, к примеру, будет очень тяжело.
3й вариант - завести большой int[] array и указатель заполненности n, занести туда всё, а потом, если нужно подрезать длину, сделать Arrays.copyOf(array, n) - будет свеженький массив с введёнными данными.
4й вариант - формат ввода сделать таким, чтобы по строке можно было сразу определить количество введённых чисел, например по количеству разделяющих их пробелов.

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Вопрос по Java №10
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*