我想在字符串数组列表中返回一个列表。
我的意思是,如果我有10个对象,并且只想打印出索引3-7,我该怎么做?
我问的原因是我有一个照片集合,如果用户想从date1 - date2返回照片,它会打印出这些日期之间的所有照片。
我尝试使用for each循环,但不确定应该使用for-loops还是while循环。
谢谢,
编辑:
这是我尝试编写的方法标头:
public ArrayList<Photo> datedPhotos(String date1, String date2)发布于 2018-09-06 15:10:53
首先,你应该在java中使用date作为Date类型。
然后,您可以使用临时ArrayList通过任意循环将照片从date1存储到date2
public ArrayList<Photo> datedPhotos(Date date1, Date date2)
{
ArrayList<Photo> temp=new ArrayList<Photo>();
for(Photo photo:PhotoList) //Here PhotoList is ArrayList of photos
{
if (/*Compare Dates using compareTo() method*/)
temp.add(photo)
}
return temp;
}您可以使用java8 DateTime API处理日期类型。
发布于 2018-09-06 15:20:27
概要可能如下所示:
public ArrayList<Photo> datedPhotos(String date1, String date2) {
SimpleDateFormat dateFormat = new SimpleDateFormat("<your-date-pattern>");
Date startDate = dateFormat.parse(date1);
Date endDate = dateFormat.parse(date2);
ArrayList<Photo> filteredPhotos = new ArrayList<>();
for(Photo photo : photoList) { // supposing that photoList is a field in your class, otherwise, you can pass it as the method parameter
Date photoDate = photo.getDate();
if((photoDate.after(startDate) || photoDate.equals(startDate) && (photoDate.equals(endDate) || photoDate.befor(endDate))) {
filteredPhotos.add(photo);
}
}
return filteredPhotos;
}https://stackoverflow.com/questions/52195080
复制相似问题