Dhanyaal Ответов: 1

Как конвертировать получения значений параметра из String в я


Проблема, которая у меня есть; пытается переделать и сделать строковый параметр в тип int. Я ключ получаю ошибку "
Cannot invoke trim() on the primitive type int
- не знаю, в чем проблема, может кто-нибудь помочь, пожалуйста.

Линия, где я получаю rrror на;
id.trim().equals(123)))


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

Я посмотрел на stackoverflow и преобразовал значение параметра get в int.
Ошибка на линии;
return((id == null) || (id.trim().equals(123)));


Смотрите код ниже;
<pre>	// Creating protected int to get the id's
	protected int[] getIDs(HttpServletRequest request) {
		//		int[] ids = { 1, 2};
		//		String[] ids = { "missing", "missing" };
		// Creating array of int id's
		int[] ids = { 1};
		// Creating foor loop for the length of the id's
		for(int i=0; i<ids.length; i++) {
			//			int id = Integer.parseInt(id);
			//			int id = request.getParameterValues(123 + (i+1));
			// Converting get parameter string to integer using integer.getInteger
			int id = Integer.getInteger(request.getParameter("1234")).intValue();
			// Creating if statement for !isEmpty for id
			if (!isEmpty(id)) { ids[i] = id; }
		} // Close for loop
		// Return the id's
		return(ids);
	} // Close protected int array for getID's

	// Creating private boolean for is empty for the id, when user inputs the id, it will then return the data for that one film id.
	private boolean isEmpty(int id) {
		return((id == null) || (id.trim().equals(123)));
	}

Richard Deeming

Сообщение об ошибке совершенно ясно. Ваш isEmpty функция принимает int параметр, который не может быть null, и не имеет метода под названием trim.

Dhanyaal

Я не понимаю, что вы имеете в виду?
Как я должен это исправить в таком случае?

1 Ответов

Рейтинг:
1

OriginalGriff

Что бы вы ожидали от функции Trim для получения целочисленного значения? Он вообще не может содержать пробелов, так что ему действительно нечего делать!

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

Кстати: с каких это пор значение 123 вообще указывает на "пустое" целое число?


Dhanyaal

На что же мне его менять в таком случае?

OriginalGriff

Откуда нам знать? :смех: Trim не имеет никакой логической функции, которую он может сделать с целым числом.

Что ты пытаешься с ним сделать?

Dhanyaal

Раньше у меня была строка вместо int, а функция trim была их l.