我是java的新手,我遇到的问题对我来说没有意义。
我有一个启动活动的列表视图,该活动必须阅读
一些意图值,以显示正确的信息。

    // getting intent data
    Intent in = getIntent();
    // Get name
    final String catName = in.getStringExtra("category").toString();
    //Textview
    TextView categorytw= (TextView)findViewById(R.id.category_name);
    categorytw.setText(catName);

    // Category URL
    String catUrl = "";

    if( catName =="Italy" ){
        catUrl = "http://url .com/italy.php";
    }
    else if( catName =="Belgium"){
        catUrl = "http://url .com/italy.php";
    }
    else if( catName =="France"){
        catUrl = "http://url .com/france.php";
    }


如您所见,我获得意图值“ category”并将其分配给catName变量,然后更新标题textview categorytw

到目前为止,一切都很好,categorytw根据catName的值进行了更新。

现在,我需要根据类别名称获取特定的网址,这就是为什么
我初始化catUrl,开头是空的。
根据catName的值,catUrl将具有不同的值。

当我从url(catUrl)获取一些数据时,将使用此值/ url:

try{
XMLParser parser = new XMLParser();
String xml   = parser.getXmlFromUrl(catUrl );
}


问题是catUrl始终为空。
我仔细检查了catName值。

有人知道这里可能出什么问题吗?

最佳答案

Java中的==按引用比较字符串(即是指向内存中相同位置的变量),而不是按值比较。使用catName.equals("Italy")按值比较。

10-05 21:41