Як записати число з рядка в змінну
У консолі вказую дату народження, наприклад,
18 грудня
але мені потрібно записати число в змінну int , а назва місяця - в рядок, щоб потім порівнювати. Як розбити рядок число і рядок, т.к. зараз у змінній n рядок? Питання простий але можу зрозуміти що необхідно використовуватиме цього, т.к. я тільки вчуся. Дякую.
1 відповідь 1
Можна читати введення частинами:
import java.util.Scanner; public class Main < public static void main(final String[] args) < System.out.println("Вкажіть дату народження: "); final Scanner scanner = новий Scanner (System.in); final int date = scanner.nextInt(); final String month = scanner.next(); System.out.println("Ви вказали '" + date + "' ' + month + "'"); >>
Або ж вважати цілком і розрізати:
import java.util.Scanner; public class Main < public static void main(final String[] args) < System.out.println("Вкажіть дату народження: "); final Scanner scanner = новий Scanner (System.in); final String[] tokens = scanner.nextLine().split(" "); final int date = Integer.decode(tokens[0]); final String month = tokens[1]; System.out.println("Ви вказали '" + date + "' ' + month + "'"); >>
А можна і з регулярними виразами пограти:
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main < public static void main(final String[] args) < System.out.println("Вкажіть дату народження: "); final Scanner scanner = новий Scanner (System.in); final String line = scanner.nextLine(); final Matcher matcher = Pattern.compile("(\d+)\s(.+)").matcher(line); if (matcher.find()) < final int date = Integer.decode(matcher.group(1)); final String month = matcher.group(2); System.out.println("Ви вказали '" + date + "' ' + month + "'"); >else < System.out.println("Неправильне введення"); >> >
P.S. На хороше, ще й винятки непогано б відловлювати.
8 методів перетворення цілого числа в рядок Java
Ми розглянемо використання наступних методів, що надаються різними класами Java, для перетворення Int на String на Java:
- Конкатенація рядків
- String.valueOf()
- String.format()
- Integer.toString()
- Integer.String(int)
- StringBuilder append ()
- StringBuffer append ()
- DecimalFormat format ()
Ми докладно розглянемо ці методи по черзі.
Перетворення цілого числа в рядок на Java
У різних сценаріях під час створення будь-якої програми або веб-сайту потрібно написати програму на Java для перетворення цілого числа в рядок.
Розглянемо сценарій у нашій Java-програмі, де після виконання певних арифметичних операцій над змінними int отримане значення є цілим числом. Однак це значення необхідно передати на будь-яке текстове поле або поле текстової області на веб-сторінці. У таких випадках потрібно спочатку перетворити значення int на String.
#1) Використання конкатенації рядків
Ми вже неодноразово використовували оператор Java plus '+', який часто використовується при друкуванні будь-якого виведення на консоль за допомогою методу System.out.println().
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * з використанням конкатенації рядків * * @author * */ public class IntStringDemo1 < public static void main(String[] args) < // Присвоїти int 25 змінної int length int length = 25; // Присвоїти int 10 змінної int width int width = 10; // Помножити значення змінних length і width і присвоїти вcalculatedArea int calculatedArea = length * width; // об'єднуємо calculatedArea в String "Variable calculatedArea Value --->" за допомогою оператора plus '+' // друкуємо змінну int типу calculatedArea System.out.println("Variable calculatedArea Value --->" + calculatedArea); >>
Нижче наведено висновок програми:
Змінна calculatedArea Значення -> 250
У наведеній вище програмі ми конкатенуємо int розрахована площа з рядком "Змінна обчислювана площа Значення ->" наступним чином:
"Змінна calculatedArea Value -> "+ calculatedArea
Це перетворює обчислену площу в рядок. Потім цей рядок передається як аргумент у System. на метод .println() для друку на консолі наступним чином:
Система.
на
.println("Значення змінної calculatedArea -> "+ calculatedArea);
Це виводить рядок на консоль:
Змінна calculatedArea Значення -> 250
#2) Використання методу String.ValueOf()
Клас String має статичні методи навантаження valueOf(). Мета цих методів перевантаження - перетворити аргументи примітивних типів даних, таких як int, long, float, тип даних String.
Давайте подивимося на метод сигнатури для типу даних int нижче:
public static String valueOf(int i)
Цей статичний метод одержує аргумент типу даних int і повертає строкове уявлення аргументу int.
Параметри:
Повертається:
Рядкове подання аргументу int.
Давайте розберемося як використовувати цей метод String.valueOf() на прикладі наступної програми. У цій програмі ми складаємо два числа і будемо використовувати метод String.valueOf() для перетворення цілого числа sumValue у рядок.
Нижче наведено приклад програми для довідки:
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * використовуючи метод String.valueOf() * * * @author * */ public class IntStringDemo2 < public static void main(String[] args) < // int 300 змінної int x int x = 300; // Присвоїти int 200 змінної int y int y = 200; // Скласти значення змінних x та y і присвоїти sumValue int sumValue = x+ y; // Передаємо sumValue як аргумент у String.valueOf() для перетворення // sumValue у String String sum = String.valueOf(sumValue); // Друкуємо змінну String sum System.out.println("Значення змінної sum --->" +sum); >>
Ось висновок програми:
Змінна сума Значення -> 500
#3) Використання методу String.format()
Клас String має статичний метод перетворення аргументів у зазначений формат.
Давайте подивимося на сигнатуру методу нижче:
public static String format(String format, Object. args)
Це статичний метод класу String, який використовує заданий формат String та аргументи Object args та повертає відформатований рядок. Якщо аргументів більше, ніж специфікаторів формату, зайві аргументи ігноруються. Кількість аргументів змінна, може бути нульовою.
Параметри:
формат: рядок формату
args: аргументи, які мають бути відформатовані відповідно до форматного рядка
Повертається:
Рядок, відформатований відповідно до зазначеного рядка формату
Кидки:
Цей метод викидає IllegalFormatException, NullPointerException.
Давайте розберемося як використовувати цей метод String.format().
Давайте подивимося код програми порівняння двох цілих чисел. Програма виведе більшу кількість із двох чисел. Ця програма використовує метод String.format() для перетворення цілого числа largeNumber у рядок.
Приклад програми наведено нижче:
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java-програми * з використанням методу String.format() * * * @author * */ public class IntStringDemo3 < public static void main(String[] args) < / / Присвоїти int 25 змінної int a int a = 25; // Присвоїти int -50 змінної int b int b = -50; // Порівняти два числа a та b int largeNumber = 0; if(a>b) < //if aбільше b, присвоюємо його змінною largeNumber bigNumber = a; >else < //якщо a менше b, то привласнюємо b змінною bigNumber bigNumber = b; >// Передаємо bigNumber як аргумент у String.format() для перетворення // bigNumber у String String bigNumberString = String.format("--->" + bigNumberString); > >
Ось висновок програми:
Змінна bigNumber Значення ->
У наведеному прикладі коду ми використовували метод String.format().Ми використовуємо "
String largeNumberString = String. формат ("
String.format() повертає відформатований рядок відповідно до заданого формату ' і виводить те саме на консоль.
Система.
на
.println("Значення змінної bigNumber ->" + bigNumberString);
Таким чином, виведення на консоль буде наступним Змінна bigNumber Значення ->
Тепер давайте подивимося методи перетворення цілого числа в рядок, які надаються класом Integer.
Ми побачимо такі методи класу Integer:
#4) Використання методу Integer(int).toString()
Ціла кількість клас надає метод toString () для перетворення int в String.
Давайте подивимося на сигнатуру методу нижче:
public String toString()
Цей метод перетворює значення на знакову десяткову виставу і повертає об'єкт String.
Давайте розберемося, як це використовується Integer(int).toString() метод.
Розглянемо приклад коду для обчислення залишку від двох чисел і виведення на консоль з використанням методу Integer(int).toString() для перетворення цілого чисельного значення remainderValue у його рядкове подання.
Нижче наведено приклад програми:
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java-програми * з використанням методу Integer.toString() * * * @author * */ public class IntStringDemo4 < public static void main(String[] args) < / / Присвоїти int 33 змінної int dividentValue int dividentValue = 33; // Присвоїти int 5 змінної int dividerValue int dividerValue = 5; // Обчислити залишок відdividentValue та dividerValue з використанням модуля int remainderValue = dividentValue % dividerValue; // Передаємо remainderValue як аргумент у new Integer() для перетворення на об'єкт Integer Integer remainderIntValue = new Integer(remainderValue); // Викликаємо метод toString() на об'єкті Integer remainderIntValue для перетворення його на String String remainder = remainderIntValue.toString(); // друкуємо змінну Stringremainder System.out.println("Значення змінної remainder --->" + remainder); >> > >
Ось висновок програми:
Змінна залишок Значення -> 3
У наведеній вище програмі ми створили екземпляр класу Integer
новий Integer(remainderValue);
і викликав на ньому метод toString(), як показано нижче:
String remainder = remainderIntValue.toString();
Цей оператор повертає рядкову виставу об'єкта класу Integer remainderIntValue.
#5) Використання методу Integer.toString(int)
Ціла кількість також надає статичний метод toString () для перетворення int в String.
Давайте подивимося на сигнатуру методу нижче:
public static String toString(int i)
Цей статичний метод повертає уявлення об'єкта String для вказаного цілого числа. Тут аргумент перетворюється на знакову десяткову виставу і повертається як String. Це так само, як і перевантажений метод toString(int i, int radix ), де значення radix дорівнює 10.
Параметри:
i: Це цілісне значення, яке необхідно перетворити
Повертається:
Рядкове подання аргументу i з радиксом 10.
Давайте розберемося, як це використовується Ціла кількість . toString(int i) метод.
Давайте напишемо приклад програмного коду, який пропонує користувачеві ввести число, обчислити квадрат числа та вивести квадрат на консоль, використовуючи метод Integer.toString(int i) для перетворення цілого числа squareValue у рядок.
Нижче наведено приклад програми:
package com.softwaretestinghelp; import java.util.Scanner; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * з використанням методу Integer.toString(int i ) * * * @author * */ public class IntStringDemo5 < private static Scanner scanner; public static void main(String[] args) < / / Пропонуємо користувачеві ввести введення за допомогою сканера, а тут System.in - стандартний потік введення scanner = new Scanner (System.in); System.out.print("Будь ласка, введіть число"); //Скануємо наступний токен введення користувача як int і присвоюємо його змінної x int x= scanner.nextInt(); //Обчислюємо квадрат числа, присвоєного x int squareValue = x * x; //Передаємо squareValue як аргумент Integer.toString() для перетворення // squareValue в String String square = Integer.toString(squareValue); //друкуємо зміннуString square System.out.println("Значення змінної square --->" + square); >>
Ось висновок програми:
Будь ласка, введіть число 5
Змінний квадрат Значення -> 25
У наведеній вище програмі ми викликали статичний метод toString на класі Integer, передавши як аргумент squareValue
String square = Integer. toString (SquareValue);
Повертається рядкове подання значення int squareValue
Розглянемо ще кілька методів, тобто. Використання методів класу StringBuffer, StringBuilder.
Клас StringBuffer використовується для додавання декількох значень String. StringBuilder виконує таку саму задачу, різниця лише в тому, що StringBuffer потокобезпечний, а StringBuilder - ні.
Самовчитель з рядків Java
#6) Використання методів класу StringBuilder
Давайте подивимося, як використовувати методи StringBuilder для перетворення int на String в Java.
Ось сигнатури методів:
public StringBuilder append(int i)
Цей метод додає рядкове уявлення аргументу int до послідовності.
Параметри:
Повертається:
Це посилання на об'єкт.
public String toString()
Цей метод повертає рядок, що представляє дані у цій послідовності.
Нижче наведено приклад програми, яка обчислює середнє значення цілих значень і ілюструє використання StringBuilder для перетворення цілого числа avgNumber в рядок.
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * використовуючи метод StringBuilder append() toString() * * * @author * */ public class IntStringDemo6 < public static void main(String[] args) < / / Привласнюємо значення масиву типу int int[] numArray =; //Знаходимо розмір масиву int arrLength = numArray.length; int arrSum = 0;// Обчислюємо додавання всіх чисел for(int i=0;i" + average); > >
Ось висновок програми:
Змінне середнє значення -> 38
У наведеній вище програмі ми використовували метод StringBuilder append() і перетворили об'єкт StringBuilder на String за допомогою методу toString()
String average = strbAvg.toString();
#7) Використання методів класу StringBuffer
Давайте подивимося, як Java перетворювати int в String, використовуючи методи StringBuffer.
Ось сигнатури методів:
public StringBuffer append(int i)
Цей метод додає рядкове уявлення аргументу int до послідовності.
Параметри:
Повертається:
Це посилання на об'єкт.
public String toString()
Цей метод повертає рядок, що представляє дані у цій послідовності.
Давайте подивимося на приклад програми нижче. Ми використовуємо метод Math.min() для знаходження меншого значення серед двох значень int і методи StringBuffer для перетворення цілого minValue в String.
package com.softwaretestinghelp; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * з використанням методу StringBuffer append() toString() * * * @author * */ public class IntStringDemo7 < public static void main(String[] args) < // Присвоїти int 60 змінної int a int a = 60; // Присвоїти int -90000 змінної int b int b = -90000; // Отримати менше значення між int a і b за допомогою Mathclass method min() int minValue = Math.min(a, b); // Передаємо minValue як аргумент методу StringBuffer.append() StringBuffer strbMinValue = new StringBuffer(); strbMinValue.append(minValue); //Перетворимо strbMinValue в String за допомогою методу toString() String minimumValue = strbMinValue.toString(); // друкуємо змінну String miniumValue System.out.println("Змінна miniumValue Value --->" +minimumValue); >>
Ось висновок програми:
Змінна miniumValue Значення ->-90000
У наведеній вище програмі ми використовували метод StringBuffer append() і перетворили об'єкт StringBuffer на String за допомогою методу toString()
String minimumValue = strbMinValue.toString();
#8) Використання методів класу DecimalFormat
Java int також можна перетворити на String за допомогою методу класу java.text.DecimalFormat.
Ось сигнатура методу format() класу.
NumberFormat. DecimalFormat розширює клас NumberFormat.
public final String format(long number)
Цей метод повертає форматований рядок для аргументу типу даних long
Параметри:
число: Це значення типу даних long
Повертається:
Нижче наведено приклад програми, що ілюструє використання методу класу DecimalFormat для перетворення цілого елемента Value в String.
package com.softwaretestinghelp; import java.text.DecimalFormat; import java.util.Scanner; /** * Цей клас демонструє приклад коду для перетворення int в String Java програми * використовуючи метод DecimalFormat format() * * * @author * */ public class IntStringDemo8 < private static Scanner scanner; public static void main(String[] args) < // Привласнюємо значення масиву масивів типу int int[][] numArray = , >; / / Пропонуємо користувачеві ввести дані за допомогою сканера, тут System.in - стандартний потік введення scanner = new Scanner (System.in); System.out.println("Please Enter the array number"); //Скануємо наступний токен введення користувача як int і присвоюємо його змінною x int x= scanner.nextInt(); System.out.println("Please Enter the element number"); //Скануємо наступний токен користувачавведення як int і присвоєння змінної y int y= scanner.nextInt(); int elementValue = numArray[x][y]; System.out.println(elementValue); // Передаємо "#" як формат для DecimalFormat DecimalFormat formatElement = new DecimalFormat("#"); // Передаємо elementValue як аргумент методу format() для перетворення в String String element = formatElement.format(elementValue); // Друкуємо змінну String elementSystem.out.println("Значення елемента змінної --->" + елемент); > >
Нижче наведено висновок програми:
Будь ласка, введіть номер масиву
Будь ласка, введіть номер елемента
Змінний елемент Значення -> 600
У наведеній вище програмі ми використовували метод format () класу DecimalFormat і перетворили int elementValue в String, як показано нижче:
String element = formatElement.format(elementValue);
Таким чином, ми розглянули кілька методів перетворення цілого числа Java на рядкове значення. У всіх прикладах програм ми бачили різні сценарії, де потрібно перетворити цілі численні значення в рядкові і вивести на екран консольний висновок.
Таким чином, для перетворення цілого числа в рядок Java у вашій Java-програмі можна використовувати будь-який з методів, продемонстрованих у наведених вище прикладах кодів.
Нижче наведені деякі з питань, що часто ставляться про перетворення int в String.
Часті питання про перетворення Int в рядок в Java
Питання #1) Чи можна перетворити int на String в Java?
Відповідь: Так , У Java ми можемо перетворити int на String.
Ми можемо перетворити int на String за допомогою наступних методів:
- Конкатенація рядків
- String.valueOf()
- String.format()
- Integer.toString()
- Integer.String(int)
- StringBuilder append ()
- StringBuffer append ()
- DecimalFormat format ()
Запитання #2) Чи можна привести тип int до рядка?
Відповідь: Так, ми можемо перетворити int на String, використовуючи методи класу String і Integer, такі як String.valueOf(), Integer.toString() і т.д.
Q #3) Як перетворити рядок на число?
Відповідь: Рядок може бути перетворена на тип int за допомогою методів класу Integer, таких як Integer.valueOf() і Integer.parseInt().
Висновок
У цьому уроці ми розглянули, як перетворити ціле число в рядок на Java, використовуючи такі методи:
- Конкатенація рядків
- String.valueOf()
- String.format()
- Integer.toString()
- Integer.String(int)
- StringBuilder append ()
- StringBuffer append ()
- DecimalFormat format ()
Ми детально розглянули кожний метод та проілюстрували його використання на прикладі.