сохранение ввода текстового поля под переменной - PullRequest
0 голосов
/ 29 октября 2019

Привет :) Я пытаюсь реализовать последовательный поиск в Java, суть в том, чтобы заставить его получить число, которое я даю в текстовом поле, и найти его в массиве. я не уверен, как получить значение и сохранить его под переменной tho, потому что мне нужно, чтобы оно было int, чтобы я мог сравнить его с числами в массиве, но мне нужно преобразовать его в строку, чтобы я мог отобразить егов текстовом поле в конце?

поэтому я назвал переменную, в которой я хочу сохранить значение числа "x", и попытался x = textfield.getText (), так как textfield1 - это поле, в которое я хочу ввести число, но оно не 't work ...

public class NewJFrame extends javax.swing.JFrame {
int array []=new int [6];
int x;
private void genActionPerformed(java.awt.event.ActionEvent evt) {                                    
 for (int i=0; i<6; i++)
  {
  array[i]=(int)(Math.random()*49+1);
 }
x= textfield1.getText();
 for (int i = 0; i < array; i++) {
if (array[i] == x)
  System.out.println( "Element found at index " + array[i]); 

error "строка не может быть преобразована в int"

Ответы [ 3 ]

0 голосов
/ 29 октября 2019

Как сказал ccarpan, вы пытаетесь сохранить текст в целое число.

Либо вы используете

String x = "";
x = textfield1.getText();

, либо вы пытаетесь проанализировать текст в целое число (если вы используете толькочисла) как:

int x;
x = Integer.parseInt(textfield1.getText());
//throws an error if you are trying to write letters or symbols
0 голосов
/ 29 октября 2019

Что вы должны сделать, это сначала сохранить значение в виде строки:

String x = textfield1.getText();

... потому что любое предоставленное значение будет действительной строкой.

Затем вы попытаетесь проанализироватьцелочисленное значение:

int n = Integer.parseInt(x);

Сделайте это в 2 шага, чтобы вы могли восстановиться из Исключения, если кто-то введет недопустимое целочисленное значение, например 12J65K9 ... если вы узнали, как выполнять обработку Исключения.

0 голосов
/ 29 октября 2019

Вы пытаетесь сохранить текст в переменной int. Переменные типа int используются только для хранения чисел типа 1, 2, 3 ... Вы должны использовать строковую переменную.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...