Android:为什么我的字符串变量在try-catch块之外无法识别?

Android:为什么我的字符串变量在try-catch块之外无法识别?,android,try-catch,Android,Try Catch,当我使用下面的代码在Logcat中打印getCategory时,我得到类别是管道工(或任何查看的内容。setCategory设置为。) //发布在ListView中单击的评论并将其发送到 //ContactView.php并从中获取其他审阅详细信息 StringRequest StringRequest=新建StringRequest(Request.Method.POST,ContactView\u URL, 新的Response.Listener(){ @凌驾 公共void onRespon

当我使用下面的代码在Logcat中打印
getCategory
时,我得到
类别是管道工
(或任何
查看的内容。setCategory
设置为。)

//发布在ListView中单击的评论并将其发送到
//ContactView.php并从中获取其他审阅详细信息
StringRequest StringRequest=新建StringRequest(Request.Method.POST,ContactView\u URL,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
//加载页面时隐藏“加载”框
pDialog.disclose();
//toast ContactView.php的响应,该响应已转换为
//Php文件中带有JSON编码的JSON数组
Toast.makeText(ContactView.this,response,Toast.LENGTH_LONG.show();
对于(int i=0;i
但是当我将
System.out.println(“类别为“+getCategory”);
放在活动中的任何其他地方,在
try catch
之外,我得到的
类别为null


我读了很多关于Stackoverflow的帖子,通过在try catch块之前声明
getCategory=null;
来解决这个问题,但是t不能解决它。如果有任何帮助,我将不胜感激。

您需要分配
getCategory
的类型

在下面的示例中,您可以访问
try

String name = "";

try{

    name = "asdasd";

}catch (Exception e){

}

System.out.println(name);

他正在设置
getCategory
。问题是
try
块在设置
getCategory
之前可以
throw
。@RobertHarvey我会在try catch之前提出建议,而不是将其设置为null。设置默认值category@Derek你能解释一下你所说的默认类别是什么意思吗?@CHarris如果它只是一个字符串I将默认类别为“无”。然后它将读取,
类别为无
String name = "";

try{

    name = "asdasd";

}catch (Exception e){

}

System.out.println(name);