gpt4 book ai didi

java - 类型不匹配 : cannot convert from String to List

转载 作者:行者123 更新时间:2023-12-02 06:14:52 24 4
gpt4 key购买 nike

我收到以下错误:

Type mismatch: cannot convert from String to List

在以下代码的 this.videos = video; 行上:

public void setVideos(String videos) {
this.videos = videos;
}

我尝试遵循 Eclipse 的两条建议:

  • 将视频类型更改为字符串
  • 将视频类型更改为列表

但是,这两种方法似乎都无法解决问题,并且都会导致额外的错误。

我目前不确定可以采取什么措施来解决该问题。

Cmd.java

public class Cmd implements ListAdapter {

private String success;
private String cmd;
List<Cmd> videos;
private String video;
private String numberofvideos;
private String videoname;
private String videourl;
private LayoutInflater mInflater;
Button fav_up_btn1;
Button fav_dwn_btn1;
Context my_context;

@Override
public View getView(int position, View convertView, ViewGroup parent) {

if (convertView == null) {
convertView = mInflater.inflate(R.layout.list_item_user_video,
parent, false);
}

ImageView thumb = (ImageView) convertView
.findViewById(R.id.userVideoThumbImageView);
TextView title = (TextView) convertView
.findViewById(R.id.userVideoTitleTextView);
TextView uploader = (TextView) convertView
.findViewById(R.id.userVideouploaderTextView);
TextView viewCount = (TextView) convertView
.findViewById(R.id.userVideoviewsTextView);
uploader.setText(videos.get(position).getTitle());
viewCount.setText(videos.get(position).getviewCount() + " views");

// Get a single video from our list
final Cmd video = videos.get(position);

// Set the image for the list item


// Set the title for the list item
title.setText(video.getTitle());
uploader.setText("by " + video.getUploader() + " | ");

return convertView;
}

public String getUploader() {
// TODO Auto-generated method stub
return null;
}

public String getviewCount() {
// TODO Auto-generated method stub
return null;
}

public CharSequence getTitle() {
// TODO Auto-generated method stub
return null;
}

public String getCmd() {
return cmd;
}

public void setCmd(String cmd) {
this.cmd = cmd;
}
public String getSuccess() {
return success;
}

public void setSuccess(String success) {
this.success = success;
}

public String getNumberOfVideos() {
return numberofvideos;
}
public void setNumberOfVideos(String numberofvideos) {
this.numberofvideos = numberofvideos;
}
public List<Cmd> getVideos() {
return videos;
}
public void setVideos(String videos) {
this.videos = videos;
}
public String getVideo() {
return video;
}
public void setVideo(String video) {
this.video = video;
}
public String getVideoName() {
return videoname;
}

public void setVideoName(String videoname) {
this.videoname = videoname;
}
public String getVideoURL() {
return videourl;
}

public void setVideoURL(String videourl) {
this.videourl = videourl;
}

@Override
public int getCount() {
return videos.size();
}

@Override
public Object getItem(int position) {
return videos.get(position);
}

@Override
public long getItemId(int position) {
return position;
}
}

SAXXMLHandler.java

public class SAXXMLHandler extends DefaultHandler {
private List<Cmd> videos;
private String tempVal;
// to maintain context
private Cmd cmd;

public SAXXMLHandler() {
videos = new ArrayList<Cmd>();
}

public List<Cmd> getResponse() {
return videos;
}

// Event Handlers
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
// reset
tempVal = "";
if (qName.equalsIgnoreCase("cmd")) {
// create a new instance of cmd
cmd = new Cmd();

}
}

public void characters(char[] ch, int start, int length)
throws SAXException {
tempVal = new String(ch, start, length);
}

public void endElement(String uri, String localName, String qName)
throws SAXException {

if (qName.equalsIgnoreCase("videos")) {
// add it to the list
videos.add(cmd);
} else if (qName.equalsIgnoreCase("success")) {
cmd.setSuccess(tempVal);
} else if (qName.equalsIgnoreCase("numberofvideos")) {
cmd.setNumberOfVideos(tempVal);
} else if (qName.equalsIgnoreCase("videos")) {
cmd.setVideos(tempVal);
} else if (qName.equalsIgnoreCase("video")) {
cmd.setVideo(tempVal);
} else if (qName.equalsIgnoreCase("videoname")) {
cmd.setVideoName(tempVal);
} else if (qName.equalsIgnoreCase("videourl")) {
cmd.setVideoURL(tempVal);

}
}
}

最佳答案

更新变量 List<Cmd> videos 的 setter 方法如下:

public void setVideos(List<Cmd> videos) {
this.videos = videos;
}

关于java - 类型不匹配 : cannot convert from String to List<Cmd>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21583706/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com