int和Integer之间转换老报错,改为parseInt,valueOf等等都不行,快崩溃了
package com.example.shop;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
public abstract class CommonAdapter<Integer> extends BaseAdapter {
protected LayoutInflater mInflater;
protected boolean conver = true;
protected int mItemLayoutId;
protected List<Integer> mList;
protected Context context;
public CommonAdapter(Context context, List<Integer> list, int itemLayoutId) {
this.mItemLayoutId = itemLayoutId;
this.context = context;
this.mList = list;
this.mInflater = LayoutInflater.from(context);
}
@Override
public int getCount() {
return mList == null ? 0 : mList.size();
}
@Override
public Integer getItem(int position) {
return mList.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public int getItemViewType(int position) {
return IGNORE_ITEM_VIEW_TYPE;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
CommonViewHolder viewHolder = CommonViewHolder.get(context,
convertView, parent, mItemLayoutId, position);
convert(viewHolder, position, getItem(position));
return viewHolder.getConvertView();
}
public void convert(CommonViewHolder holder, int position, Integer item)
{
if (item==0)
holder.getView(R.id.rl_0).setVisibility(View.VISIBLE);
else if(item==1)
holder.getView(R.id.rl_1).setVisibility(View.VISIBLE);
}
}
if(item.intValue()==0)
Integer是包装类,所以不能直接==,可以通过一楼方法获取其int值。类似的list<>中需要类参数,不能使用int需要使用integer
之前说的有问题integer是能直接进行数值判断的,这里有两种解决方案,
第一种
第二种
你JDK版本太低了,,至少到jdk7就可以使用了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。