49R Ответов: 2

Преобразование строки в целое число в java


sample.java:7: ошибка: не удается найти символ
I=целое.parseInt(с);
^
символ: метод parseInt(String)
расположение: класс Integer

произошла ошибка при преобразовании строки в целое число

версия java "1.8.0_191"
и javac 1.8.0_161

Что я уже пробовал:

class sample
{
	public static void main(String args[])
	{
		String s=new String("100");
		int i;
		i=Integer.parseInt(s);
		System.out.print(i);
	}	
}

Richard MacCutchan

Я только что попробовал этот код, и он отлично работает.

2 Ответов

Рейтинг:
2

49R

import java.lang.Integer;
class sample
{
	public static void main(String args[])
	{
		String s=new String("100");
		int i;
		i=Integer.parseInt(s);
		System.out.print(i);
	}	
}


Afzaal Ahmad Zeeshan

Этот импорт не требуется, он работает и без этого тоже.

Рейтинг:
19

Afzaal Ahmad Zeeshan

Во-первых, код работает просто отлично, и выход составляет 100 в моем случае, просто попробовал в VS Code. Итак, покажите код, который вызывает проблему.

Теперь, к вопросу, эти две ошибки различны,

sample.java:7: error: cannot find symbol
и,
error has occure while converting string to integer

Они оба имеют разное значение, таким образом разделяя, что они происходят в 2 разных случаях. Первый из них, в основном, означал бы, что вы, возможно, пропустите импортировать. В то время как второй означает, что вы передали правильное значение строки, которое не может быть сопоставлено с допустимым целым числом. Несколько вещей, которые вы можете сделать,
int value;
try {
   value = Integer.parseInt(s);
} catch (Exception e) {
   // Problem, 
}
Это гарантирует, что в случае возникновения исключения времени выполнения во время преобразования ваше приложение не будет аварийно завершать работу, а вместо этого будет предоставлена возможность отобразить дружественное сообщение на экране. Если вы попытаетесь проверить документацию для функции parseInt (), то увидите, что она выдает NumberFormatException- это то , что вам нужно искать.

Integer (Java Platform SE 7 )[^]