2016-02-13 55 views
0

大家好,我的問題是關於Android的編程條件如果變量退出與否。我有一個名爲company_name varible我必須從REST API獲取和打印我的Android設備上。Android的代碼從REST API檢查

但我的問題是必須檢查的條件,如果company_name(變量)的存在與否,如果不是,那麼它必須跳過它,打印等。

我的代碼:

try { 
        JSONObject jsonObject = new JSONObject(response); 
        final JSONArray jsonArray = jsonObject.getJSONArray("data"); 


        final List<String> names = new ArrayList<String>(); 
        for (int i = 0; i < jsonArray.length(); i++) { 
         JSONObject inter = new JSONObject(jsonArray.get(i).toString()); 
         ApplyJobItem jobItem = new ApplyJobItem(); 
         jobItem.setCompanyName(inter.getString("company_name")); 
         jobItem.setIndustry(inter.getString("industry_selected")); 
         jobItem.setJobPost(inter.getString("title")); 
         jobItem.setJobType(inter.getString("type")); 
         jobItem.setJobId(inter.getString("_id")); 
         //jobItem.setJobCity(inter.getString("location")); 
         //jobItem.setJobSalary(inter.getJSONArray("salary_range").getString(0) + " to " + inter.getJSONArray("salary_range").getString(1)); 
         jobItem.setdescription(inter.getString("description")); 
         names.add(inter.getString("company_name")); 
         names.add(inter.getString("industry_selected")); 
         names.add(inter.getString("title")); 
         // names.add(inter.getString("description")); 
         applyJobItems.add(jobItem); 
         android.util.Log.e("Company name", inter.getString("company_name")); 
        } 

         ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(apply.this, android.R.layout.simple_list_item_2, names); 
         final boolean isCareer = jsonObject.getBoolean("careerUpdated"); 
         android.util.Log.e("Entered ", "1"); 
         applyJobAdapter = new ApplyJobAdapter(apply.this, applyJobItems, isCareer); 
         android.util.Log.e("Entered ", "2"); 
         ListView mylistview = (ListView) findViewById(R.id.list); 
         android.util.Log.e("Entered ", "3"); 
         mylistview.setAdapter(applyJobAdapter); 
         android.util.Log.e("Entered ", "4"); 


         mylistview.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
          @Override 
          public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
           Intent intent = new Intent(getApplicationContext(), applypage.class); 
           intent.putExtra("careerUpdate", isCareer); 
           intent.putExtra("position", position); 
           startActivity(intent); 
          } 
         }); 
+0

'.has'屬性可以幫助我認爲 – Ronnie

回答

0

使用inter.has("company_name")檢查company_name關鍵在你JSONObject存在與否。

//... 
jobItem.setdescription(inter.getString("description")); 

if(inter.has("company_name")){ 
    names.add(inter.getString("company_name")); 
    names.add(inter.getString("industry_selected")); 
    names.add(inter.getString("title")); 
    applyJobItems.add(jobItem); 
    android.util.Log.e("Company name", inter.getString("company_name")); 
} else { 
    android.util.Log.e("Company name", "Not exist"); 
} 
0

你可以在你的JSONObject檢查 'COMPANY_NAME' 鍵的存在與否 -

if(inter.has("company_name")) 
    //Continue you processing 
else 
    //Stop reading the data