问:请帮助我理解代码中的问题 - 代码检查器抛出错误说 - 添加到列表没有被使用,而我正在对数组列表使用 add 方法。
private List < Video > mVideos = new ArrayList < Video >();
public void addForgottenVideo ( Course course ) { // TODO(1): 创建一个名为“The Beginning Bits”的新视频Video video = new Video ( “The Beginning Bits” ); // TODO(2):将新创建的视频作为第二个视频添加到课程视频中。移动视频。添加(视频);课程=新课程(
"课程" , mVideos );
}
com/example/model/Course.java
包 com.example.model ;
导入java.util.List ; 公共类课程{私人字符串MNAME ; 私人列表<视频> mVideos ; 公共课程(字符串名称,列表<视频>视频){ mName = name ; mVideos =视频;} public String getName () {返回
名称;
} public List < Video > getVideos () { return mVideos ; } }
com/example/model/Video.java
包 com.example.model ;
公共类视频{私人字符串mTitle ; 公共视频(字符串标题){ mTitle =标题;} public String getTitle () {返回mTitle ; } public void setTitle ( String title ) { mTitle = title ; } }
快速修复程序
导入 com.example.model.Course ;
导入 com.example.model.Video ;
导入 java.util.List ;
导入 java.util.ArrayList ;
导入 java.util.Map ;
public class QuickFix { private List < Video > mVideos = new ArrayList < Video >(); public void addForgottenVideo ( Course course ) { // TODO(1): 创建一个名为“The Beginning Bits”的新视频Video video
= 新 视频(“开始位” );
移动视频。添加(视频);// TODO(2):将新创建的视频作为第二个视频添加到课程视频中。course = new Course ( "course" , mVideos ); } public void fixVideoTitle ( Course course , String oldTitle , String newTitle ) { } public Map < String , Video >
videoByTitle (课程 课程) {
return null ; } }
答:问题是您使用的add()是私有列表 mVideos,而不是course传入addForgottonVideo()方法的实例中的视频
public void addForgottenVideo ( Course course ) {
// TODO(1): 创建一个名为“The Beginning Bits”的新视频Video video = new Video ( “The Beginning Bits” ); // TODO(2):将新创建的视频作为第二个视频添加到课程视频中。// 从课程对象List < Video > videos = course 中获取视频列表。获取视频(); // 添加新视频作为 *second* video (index of 1) videos 。添加( 1 ,视频
);
}