#java #android #int #charsequence
#java #Android #int #последовательность символов
Вопрос:
Есть ли способ преобразовать Charsequence или строку в Ingeter?
CharSequence cs = "123";
int number = (int) cs;
Я новичок. Решение:
CharSequence cs = "123";
int number = Integer.parseInt(cs);
Комментарии:
1. как насчет наоборот?
2.
CharSequence cs = String.valueOf(number);
3. @passsy ваш комментарий должен быть рекомендуемым вариантом. Вместо ненужных преобразований.
Ответ №1:
Используйте Integer.parseInt()
. Если ваш CharSequence
не является String
, то вам нужно сначала преобразовать его с помощью toString()
.
int number = Integer.parseInt(cs.toString());
Комментарии:
1. В дополнение к ответу Иоахима, в вашем случае
CharSequence
cs уже является строкой.CharSequence
этоinterface
реализовано с помощью String (но не только), поэтому вы не создавали объект изCharSequence
(поскольку такой вещи не существует), но присвоили строкуcs
.
Ответ №2:
Начиная с Java 9, вы можете использовать Integer.parseInt(CharSequence s, int from, int to, int radix)
для разбора целых чисел из любого CharSequence
без предварительного преобразования его в строку:
CharSequence cs = new StringBuilder("4711");
int value = Integer.parseInt(cs, 0, cs.length(), 10);
Ответ №3:
используйте это
int i=Integer.parseInt(cs.toString())
Ответ №4:
Integer.parseInt(cs.toString())
Ответ №5:
Используйте синтаксические анализаторы из классов-оболочек (Integer, Float и т.д.)…
public static void main(String[] args) {
String s = "1";
int i = Integer.parseInt(s);
System.out.println(i);
}
Ответ №6:
Использование Kotlin
CharSeqString.toString.toInt()
Ответ №7:
Из компонента Editview,
TextView txtYear = (TextView) findViewById(R.id.txtYear);
int intYear = Integer.parseInt(txtYear.getText().toString());