Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关
publishProgress(i);调用这个方法,实际运行的方法是 protected void onProgressUpdate(Integer... values) {//此方法在主线程中调用即可,放到点击事件,或者onCreate方法都可以,参数就是要请求的网址 new MyAsyncTask().execute(" );//自定义的AsyncTask private class MyAsyncTask extends AsyncTask<String, Integer, String> { //这个方法运行在主线程,在doInBackground之前运行,我们一般做初始化 @Override protected void onPreExecute() { super.onPreExecute(); } //这个方法运行在子线程,我们可以做一个耗时操作 @Override protected String doInBackground(String... strings) { 网络请求的操作,注意用return返回获取到的字符串,加网络权限 return null; } //运行在主线程,这个方法在doInBackground执行之后执行.我们一般做从网络拿到数据,使用的数据的操作 @Override protected void onPostExecute(String s) { 拿到处理后的数据,更新UI/// super.onPostExecute(s); } } // 第一个泛型就是 doInBackground 方法的参数类型, 也就是execute传入的参数类型 // 第二个泛型是 publishProgress(在doInBackground 里调用) 方法的参数类型, 也是onProgressUpdate方法的参数类型 // 第二个泛型是 doInBackground 的返回值类型, 也是 onPostExecute 的参数类型优点:
1.简单,快捷
2.过程可控
3.使用的缺点:
缺点: 在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来.