Elettracompany.com

Компьютерный справочник
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Integer parseint java

Integer parseint java

Класс Integer — это оболочка простого типа int. Объект содержит единственное поле типа int. Кроме того, этот класс обеспечивает несколько методов для преобразования int в String и обратно, а также другие константы и методы полезные при работе с int.

Поля класса:

  • static int MAX_VALUE — Самая большая величина типа int
  • static int MIN_VALUE — Минимальная величина типа int
  • static Class TYPE — Объект Класса представляющий простой тип int

Конструктор класса:

  • Integer(int value) — Создает вновь размещенный объект Integer, который создается на основе аргумента
  • Integer(String s) — Создает вновь размещенный объект Integer, который создается на основе строкового аргумента

Методы класса:

  • byte byteValue() — Возвращает величину Integer как byte
  • int compareTo(Integer anotherInteger) — Сравнивает два целых числа
  • int compareTo(Object o) — Сравнивает число с другим объектом
  • static Integer decode(String nm) — Переводит строку в целое
  • double doubleValue() — Возвращает величину Integer как double
  • boolean equals(Object obj) — Сравнивает это объект с другим объектом
  • float floatValue() — Возвращает величину Integer как double
  • static Integer getInteger(String nm) — Определяет значение целого системного свойства с определенным именем
  • static Integer getInteger(String nm, int val) — Определяет значение целого системного свойства с определенным именем
  • static Integer getInteger(String nm, Integer val) — Возвращает значение целого системного свойства с определенным именем
  • int hashCode() — Возвращает hashcode для этого обьекта
  • int intValue() — Возвращает величину Integer как int
  • long longValue() — Возвращает величину Integer как long
  • static int parseInt(String s) — Выполняет грамматический разбор аргумента строки как десятичного целого
  • static int parseInt(String s, int radix) — Выполняет грамматический разбор аргумента строки, как целого со знаком в системе счисления определенной во втором аргументе
  • short shortValue() — Возвращает величину Integer как short
  • static String toBinaryString(int i) — Создает представление строки аргумента целого как целое с базой 2
  • static String toHexString(int i) — Создает представление строки аргумента целого как целое с базой 16
  • static String toOctalString(int i) — Создает представление строки аргумента целого как целое с базой 8
  • String toString() — Возвращает строковое представление числа
  • static String toString(int i) — Возвращает новый объект строки с десятичным представлением числа
  • static String toString(int i, int radix) — Возвращает новый объект строки с текстовым значением числа i в заданной системе счисления radix
  • static Integer valueOf(String s, int radix) — Возвращает новый объект Integer инициализированный величиной определенной в строковой переменной s записанной в системе счисления radix

Как преобразовать String в int в Java?

2720 Unknown user [2011-04-07 21:27:00]

Как преобразовать String в int в Java?

Моя строка содержит только числа, и я хочу вернуть номер, который он представляет.

Например, с учетом строки «1234» результатом должно быть число 1234 .

java string type-conversion int

43 ответа

3767 Решение Rob Hruska [2011-04-07 21:29:00]

Если вы посмотрите на документацию по Java, вы заметите «уловку», NumberFormatException , что эта функция может генерировать NumberFormatException , которое, конечно же, нужно обрабатывать:

(По умолчанию это неправильное число равно 0 , но вы можете сделать что-нибудь еще, если хотите.)

Кроме того, вы можете использовать метод Ints из библиотеки Guava, который в сочетании с Java 8 Optional обеспечивает мощный и краткий способ преобразования строки в int:

628 smas [2011-04-07 21:36:00]

Например, это два способа:

Между этими методами существует небольшая разница:

  • valueOf возвращает новый или кэшированный экземпляр java.lang.Integer
  • parseInt возвращает примитив int .

То же самое для всех случаев: Short.valueOf / parseShort , Long.valueOf / parseLong и т.д.

230 Ali Akdurak [2013-04-30 09:54:00]

Ну, очень важный момент для рассмотрения состоит в том, что парсер Integer генерирует NumberFormatException, как указано в Javadoc.

Важно обработать это исключение, пытаясь получить целочисленные значения из разделенных аргументов или динамически разбираться.

83 Billz [2013-09-11 05:08:00]

Сделайте это вручную:

42 Oak [2014-03-21 02:51:00]

В настоящее время я выполняю задание для колледжа, где я не могу использовать определенные выражения, такие как приведенные выше, и, посмотрев таблицу ASCII, мне удалось это сделать. Это гораздо более сложный код, но он может помочь другим, которые были ограничены, как и я.

Первое, что нужно сделать, это получить вход, в данном случае, строку цифр; Я назову его String number , и в этом случае я проиллюстрирую его с использованием номера 12, поэтому String number = «12»;

Еще одно ограничение заключалось в том, что я не мог использовать повторяющиеся циклы, поэтому нельзя использовать цикл for (который был бы совершенным). Это немного ограничивает нас, но опять же, что цель. Поскольку мне нужны только две цифры (взяв последние две цифры), простой charAt решил:

Читать еще:  Java tryparse int

Имея коды, нам просто нужно посмотреть в таблицу и внести необходимые корректировки:

Теперь, зачем удваивать? Ну, из-за действительно «странного» шага. В настоящее время у нас есть два двойника: 1 и 2, но нам нужно превратить его в 12, нет никакой математической операции, которую мы можем сделать.

Мы делим последний (lastdigit) на 10 по модулю 2/10 = 0.2 (следовательно, поэтому double) следующим образом:

Это просто игра с цифрами. Мы превратили последнюю цифру в десятичную. Но посмотрите, что происходит:

Не вдаваясь в математику, мы просто изолируем единицы цифр. Видите ли, поскольку мы рассматриваем только 0-9, деление на несколько из 10 походит на создание «коробки», где вы храните его (вспомните, когда ваш учитель первого класса объяснил вам, что такое единица и сто). Итак:

И ты туда. Вы превратили строку цифр (в данном случае две цифры) в целое число, состоящее из двух цифр, учитывая следующие ограничения:

  • Нет повторяющихся циклов
  • Нет выражений «Magic», таких как parseInt

Альтернативное решение — использовать Apache Commons ‘ NumberUtils:

Утилита Apache хороша, потому что если строка является недопустимым числовым форматом, тогда всегда возвращается значение 0. Следовательно, вы сохраняете блок catch try.

Integer.decode

Вы также можете использовать public static Integer decode(String nm) throws NumberFormatException .

Он также работает для базовых 8 и 16:

Если вы хотите получить int вместо Integer , вы можете использовать:

Всякий раз, когда имеется малейшая вероятность того, что данная строка не содержит целочисленного значения, вам придется обрабатывать этот частный случай. К сожалению, стандартные Java-методы Integer::parseInt и Integer::valueOf бросают a NumberFormatException , чтобы сигнализировать об этом специальном случае. Таким образом, вы должны использовать исключения для управления потоком, которые обычно считаются плохим стилем кодирования.

По-моему, этот специальный случай должен быть обработан возвратом Optional . Поскольку Java не предлагает такой метод, я использую следующую оболочку:

Хотя это все еще использует исключения для управления потоком внутри, код использования становится очень чистым.

Преобразование строки в int более сложно, чем просто преобразование числа. Вы можете подумать о следующих проблемах:

  • Строка содержит только цифры 0-9?
  • Что происходит с -/+ до или после строки? Возможно ли это (ссылаясь на учетные номера)?
  • Что происходит с MAX _-/MIN_INFINITY? Что произойдет, если строка 99999999999999999999? Может ли машина обрабатывать эту строку как int?

Мы можем использовать метод parseInt(String str) класса оболочки Integer для преобразования значения String в целочисленное значение.

Класс Integer также предоставляет метод valueOf(String str) :

Мы также можем использовать toInt(String strValue) класс утилиты NumberUtils для преобразования:

Методы для этого:

Integer.valueOf выдает объект Integer, все остальные методы — примитив int.

Последние 2 метода от commons-lang3 и большая статья о конвертации здесь.

19 fitorec [2014-05-23 18:38:00]

У меня есть решение, но я не знаю, насколько он эффективен. Но он работает хорошо, и я думаю, вы могли бы его улучшить. С другой стороны, я сделал пару тестов с JUnit, которые делают шаг правильно. Я прикрепил функцию и тестирование:

parseint « Integer « Java Data Type Q&A

1. How does Integer.parseInt(string) actually work? stackoverflow.com

Was asked this question recently and did not know the answer. From a high level can someone explain how Java takes a character / String and convert it into an int. Many .

2. need help with parseInt stackoverflow.com

how can i get for example the integer codeInt=082 from String code=’A082′ i have tried this: and i get codeInt=82 ,it leaves the first 0 but i want the full .

3. Strange Integer.parseInt exception stackoverflow.com

Exception in thread «Thread-2» java.lang.NumberFormatException: For input string: «3» This is the error I keep getting when I’m trying to convert «3» to an .

4. Beginner Java Question about Integer.parseInt() and casting stackoverflow.com

so when casting like in the statement below :- it causes the random no. generated to get converted into an int.. Also there’s this method I just came across Integer.parseInt() which .

5. Java: parse int value from a char stackoverflow.com

I just want to know if there’s a better solution to parse a number from a character in a string (assuming that we know that the character at index n is .

6. Java Beginner Having Trouble Using Integer.parseInt for Converting a String into an integer stackoverflow.com

I am creating a batch program that reads an external input file that contains credit card numbers and then sums the digits(from right to left), starting at the last digit and skipping every .

7. NumberFormatException error (parseInt stackoverflow.com

Hopefully a very simple query, but it’s left me scratching my head. I have a string, which is just a single integer, and I’m trying to then get that integer out as .

Читать еще:  Графики в javascript как построить

8. Integer.parseInt , eror for java lang numberformat Exception stackoverflow.com

but I get following exception. Why? .

10. Diagnosing Integer.parseInt() Error stackoverflow.com

I am reading in pipe delimitated text in from a flat file and am having an error parsing the text. I am an old Java hand but I haven’t touched it .

11. Java Integer.parseInt failed to parse a string stackoverflow.com

I’m parsing a string of 15 digits like this: I’m getting an exception when doing so. Why? What are the limitations for Integer.parseInt ? What other options do .

12. Integer.parseInt() coderanch.com

> In case if i validate the string and find out that it is not in the desired format then what should be done? Return null or throw a custom exception? That depends on your application. Is it text that a user entered in a GUI? In that case, you might want to display a message to the user that (s)he .

13. Overloded parseInt(String, int)? coderanch.com

Ahmer The int argument is the radix that the String integer is in. In other words its base. A String such as «12349» would be base 10 so the parseInt call would be parseInt(«12349», 10); . A String that is a hex representation could be something like «AF», so parseInt would be parseInt(«AF», 16);. Basicaly your telling the method that this .

14. compiler error — Integer.parseInt coderanch.com

I am working (still) on my numerology program. I am almost done, but am having trouble with the reduce_num method. What I did was just return the number if it was 9, I tried to reduce it by converting it to a String, then using a loop to divide up the different parts of the .

15. Integer.parseInt(«+000000»); coderanch.com

I will now teach you how to fish my lad First, you have the source code to all the java classes. It’s in a jar file called src.jar, in your jdk folder. Open it up and take a look at the Integer class, then scroll down to the parse() method. You’ll see that parse(String) calls parse(String, int). Looking at this method, .

16. Integer.parseInt : NumberFormatException coderanch.com

hmm only things I can think of is to check the length and make sure you don’t have any extra spaces in there. ALso, try printing it out to your console right before you try to parse it to be sure it really is the value you expect. My guess is that your string isn’t what you think it is. You .

17. Integer.parseInt coderanch.com

18. Integer.parseInt() vs String concatenation coderanch.com

The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny — it is the light that guides your way. — .

19. Head First Java — Dot com game, Query on Integer.parseInt coderanch.com

Hi, I am new to Java and trying to learn java from Head First book chapter 5, In this book code has written to create simple dotcom game. Basically it is doing following 1. Create grid of simple array 2. Assign 3 continous locations in a array 3. Accept guess from user 4. If location allocated = guess then give message .

Convert String To int Java – Tutorial & Examples

in Java Tutorials Comments Off on Convert String To int Java – Tutorial & Examples

How to Convert String to int in Java – The following article will let you know the complete information about string to int java, in case if you have any doubts do let me know.

We have different ways to convert a String to int in Java

  • Integer.parseInt()
  • Integer.valueOf()
  • Integer.parseUnsignedInt()

Our own logic equivalent to – Integer.parseInt()

String To Int Java

Integer.parseInt() – How It Works:

Syntax1 – int parseInt(String);

It converts the given String into an integer. Suppose we give a String “234” as argument to the method, then it returns the integer 234. As this is a static method, we can invoke this using its class name.

Example:

Algorithm for converting string to int without built-in method:

Implementation:

Output:

Integer.decode() – How It Works

An empty String or a String that contains non-digits will result in Number Format Exception.

Читать еще:  Java security cert

Ex:

“234A”, “34.54”, “smile”, “”, etc.

Syntax2: int parseInt(String,int);

This is similar to normal parseInt(), but it takes an integer as second argument and this argument represents the radix of the content in the input String.

Suppose we want to convert an octal number (which is in String format) into its equivalent decimal integer then the second argument should be 8.

Similarly, if we want a hexa-decimal String to its decimal number then the second argument should be 16.

Eg: Integer.parseInt(“234”,10); will result in 234

Implementation:

Example:

Integer.parseInt(“234”,2); will result in NumberFormatException as allowed digits in binary(2) number system are 0 and 1 only.

Integer.parseInt(“789”,8); will result in NumberFormatException as allowed digits in octal(8) number system are from 0 to 7 only

string to int java – Integer.valueOf()

It can also be used similar to Integer.parseInt() to convert a String to int. This method also has an overloaded method to take an int (radix) as second argument where as the first argument is a String.

Integer.parseInt() returns the result as a basic (primitive) int type where as Integer.valueOf() returns the result an Integer object.

  • Integer.valueOf(“234”); will give 234 as Integer object
  • Integer.valueOf(“412”); will give 412 as Integer object
  • Integer.valueOf(“234”,8); will give 156 as Integer object
  • Integer.valueOf(“234”,16); will give 564 as Integer object

Integer.parseUnsignedInt()

This is also similar to Integer.valueOf() and Integer.parseInt() but it can work on positive values only.

  • Integer.parseUnsignedInt(“874”); returns 874
  • Integer.parseUnsignedInt(“+874”); returns 874
  • Integer.parseUnsignedInt(“-874”); raises NumberFormatException

Algorithm:

Syntax: Integer decode(String);

This method converts the given string into an int and returns an Integer object.

Integer parseint java

Converting a String to an int , or its respective wrapper class Integer , is a common and simple operation. The same goes for the other way around, converting a Integer to String.

There are multiple ways to achieve this simple conversion using methods built-in to the JDK.

Converting String to Integer

For converting String to Integer or int, there are four built-in approaches. The wrapper class Integer provides a few methods specifically for this use — parseInt() , valueOf() and decode() , although we can also use its constructor and pass a String into it.

These three methods have different return types:

  • parseInt() — returns primitive int .
  • valueOf() — returns a new or cached instance of Integer
  • decode() — returns a new or cached instance of Integer

That being said, it’s valid to raise a question:

«What’s the difference between valueOf() and decode() then?

The difference is that decode() also accepts other number representations, other than regular decimal — hex digits, octal digits, etc.

Note: It’s better practice to instantiate an Integer with the help of the valueOf() method rather than relying on the constructor. This is because the valueOf() method will return a cached copy for any value between -128 and 127 inclusive, and by doing so will reduce the memory footprint.

Integer.parseInt()

The parseInt() method ships in two flavors:

  • parseInt(String s) — Accepting the String we’d like to parse
  • parseInt(String s, int radix) — Accepting the String as well as the base of the numeration system

The parseInt() method converts the input String into a primitive int and throws a NumberFormatException if the String cannot be converted:

Running this piece of code will yield:

Integer.valueOf()

The valueOf() ships in three flavors:

  • valueOf(String s) — Accepts a String and parses it into an Integer
  • valueOf(int i) — Accepts an int and parses it into an Integer
  • valueOf(String s, int radix) — Accepts a String and returns an Integer representing the value and then parses it with the given base

The valueOf() method, unlike the parseInt() method, returns an Integer instead of a primitive int and also throws a NumberFormatException if the String cannot be converted properly and only accepts decimal numbers:

Running this piece of code will yield:

Integer.decode()

The decode() method accepts a single parameter and comes in one flavor:

  • decode(String s) — Accepts a String and decodes it into an Integer

The decode() method accepts decimal, hexadecimal and octal numbers, but doesn’t support binary:

Running this piece of code will yield:

Conclusion

We’ve covered one of the fundamental topics of Java and common problem developers face — Converting a String to an Integer or int using tools shipped with the JDK.

Ссылка на основную публикацию
Adblock
detector