Строка Groovy к интервалу

Компрессор YUI является способом пойти. Это имеет большой уровень сжатия, хорошо тестируется и используется многими главными сайтами, и, ну, в общем, лично рекомендуемый мной.

я использовал его для своих проектов без единственной ошибки JavaScript или отклонения. И это имеет хорошую документацию.

я никогда не использовал ее возможности сжатия CSS, но они существуют также. сжатие CSS работает точно также.

Примечание: Хотя Dean Edwards / упаковщик / достигает лучшего уровня сжатия, чем Компрессор YUI, я столкнулся с несколькими ошибками JavaScript при использовании его.

270
задан Steve Kuo 10 November 2009 в 20:49
поделиться

4 ответа

Используйте метод toInteger () для преобразования String в Integer , например,

int value = "99".toInteger()

Альтернативный вариант, который позволяет избежать использования устаревшего метода (см. ниже) -

int value = "66" as Integer

. Если вам нужно проверить, можно ли String преобразовать перед выполнением преобразования, используйте

String number = "66"

if (number.isInteger()) {
  int value = number as Integer
}

Grails

. преобразование параметра запроса в контроллер Grails, есть еще лучший способ

Integer paramValue = params.int('paramName')

. Одна из приятных особенностей этого метода - то, что он безопасен, т.е. если параметр не может быть преобразован в Integer , он возвращает null, а чем генерировать исключение.

Обновление устаревания

В последних версиях Groovy один из методов toInteger () объявлен устаревшим. Следующее взято из org.codehaus.groovy.runtime. StringGroovyMethods в Groovy 2.4.4

/**
 * Parse a CharSequence into an Integer
 *
 * @param self a CharSequence
 * @return an Integer
 * @since 1.8.2
 */
public static Integer toInteger(CharSequence self) {
    return Integer.valueOf(self.toString().trim());
}

/**
 * @deprecated Use the CharSequence version
 * @see #toInteger(CharSequence)
 */
@Deprecated
public static Integer toInteger(String self) {
    return toInteger((CharSequence) self);
}

Вы можете принудительно вызвать нерекомендуемую версию метода, используя что-то ужасное, например:

int num = ((CharSequence) "66").toInteger()

Лично я предпочитаю:

int num = 66 as Integer
465
ответ дан 23 November 2019 в 02:18
поделиться

Что ж, Groovy прекрасно принимает форму Java. Если вы спрашиваете, существует ли способ Groovier , есть способ перейти к Integer .

Оба варианта показаны здесь:

String s = "99"
assert 99 == Integer.parseInt(s)
Integer i = s as Integer
assert 99 == i
15
ответ дан 23 November 2019 в 02:18
поделиться

Несколько способов сделать это, это мой любимый:

def number = '123' as int
66
ответ дан 23 November 2019 в 02:18
поделиться

В качестве дополнения к ответу Дона Groovy не только добавляет метод .toInteger () в String s, он также добавляет toBigDecimal () , toBigInteger () , toBoolean () , toCharacter () , toDouble () , toFloat () , toList () и toLong () .

В том же духе groovy также добавляет is * эквивалентны всем тем, которые возвращают true , если строка , о которой идет речь, может быть проанализирована в рассматриваемый формат.

Соответствующая страница GDK находится здесь.

29
ответ дан 23 November 2019 в 02:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: