Я хотел вывести значение переменной на консоль для отладки, но system.out.println не работает.
Ответы:
Я новичок в разработке Android и делаю следующее:
1) Создайте класс:
import android.util.Log; public final class Debug { частная отладка () {} public static void out (Object msg) { Log.i ("информация", msg.toString ()); } }
Когда закончите проект, удалите класс.
2) Чтобы распечатать сообщение в LogCat, напишите:
Debug.out ("something");
3) Создайте фильтр в LogCat и напишите «info» во вводе «by Log Tag». Все ваши сообщения будут написаны здесь. :)
Совет: создайте еще один фильтр, чтобы отфильтровать все ошибки и упростить отладку.
Написание следующего кода для печати чего-либо в LogCat отлично работает !!
int score=0;
score++;
System.out.println(score);
печатает счет на LogCat.
Я думаю, что тост может быть хорошим способом показать значение переменной!
Хорошо, Toast не сложный, но для работы ему нужен объект контекста, может быть MyActivity.this
, тогда вы можете написать:
Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();
Хотя Toast является ресурсом пользовательского интерфейса, его использование в другом потоке, отличном от потока пользовательского интерфейса, отправит сообщение об ошибке или просто не будет работать. Если вы хотите распечатать переменную, поместите переменную name.toString()
и объедините ее с нужным текстом в параметре maketext String; )
Если код, который вы тестируете, относительно прост, вы можете просто создать обычный проект Java в проводнике пакетов и скопировать код, запустить его и исправить там, а затем скопировать обратно в свой проект Android.
Тот факт, что System.out перенаправлен, довольно раздражает для быстрого тестирования простых методов, но это самое простое решение, которое я нашел, вместо того, чтобы запускать эмулятор устройства, чтобы увидеть, работает ли регулярное выражение.
Кстати, если вы не знаете, где находится ваш JSONObject внутри JSONArray, я предлагаю использовать следующий код: (Я предположил, что «jsonArray» - ваша основная переменная со всеми данными, и я ищу точное объект внутри массива с функцией равенства)
JSONArray list = new JSONArray();
if (jsonArray != null){
int len = jsonArray.length();
for (int i=0;i<len;i++)
{
boolean flag;
try {
flag = jsonArray.get(i).toString().equals(obj.toString());
//Excluding the item at position
if (!flag)
{
list.put(jsonArray.get(i));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
jsonArray = list;