package com.homework.demo_4;
/*
 * 1.定义一个接口,让其实现类实现它的所以得方法,同时限制类的实现
 * 2.查询新闻
 * 3.添加新闻
 * 4.删除新闻
 * */
public interface INewsInfo {
	//查询新闻,根据新闻编号查找
	public abstract void findNews(String newsId);
	//添加新闻
	public abstract void addNews(NewsInfo news);
	//删除新闻
	public abstract void deleteNews(String newsId);
	//定义一个方法,显示所以得新闻
	public abstract void showAllNews();
}
//////////////////////////////////////以上是接口////////////////////////////////////////////////
package com.homework.demo_4;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Scanner;
public class NewsInfo  implements INewsInfo{
	private String newsId;
	private String newsTitle;
	private String newsContent;
	private Date newsDate;
	public String getNewsId() {
		return newsId;
	}
	public void setNewsId(String newsId) {
		this.newsId = newsId;
	}
	public String getNewsTitle() {
		return newsTitle;
	}
	public void setNewsTitle(String newsTitle) {
		this.newsTitle = newsTitle;
	}
	public String getNewsContent() {
		return newsContent;
	}
	public void setNewsContent(String newsContent) {
		this.newsContent = newsContent;
	}
	public Date getNewsDate() {
		return newsDate;
	}
	public void setNewsDate(Date newsDate) {
		this.newsDate = newsDate;
	}
	//定义一个集合用于存储对象
	List<NewsInfo> list = new ArrayList<NewsInfo>();
	
	@Override
	//查询新闻,根据新闻编号查找
	public void findNews(String newsId) {
		if(list.isEmpty()){
			System.out.println("还没有你要查找的信息哦!!!");
		}else{
		 for (NewsInfo news :list) {
			if(news.getNewsId().equals(newsId)){//判断集合中是否有该Id值
				System.out.println(news.toString());
			}
		}
		}
		 
	}
	@Override
	//添加新闻
	public void addNews(NewsInfo news) {
		//创建一个扫描器对象
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入你要添加编号:");
		String newsId = sc.nextLine();
		System.out.println("请输入你要添加标题:");
		
		String newsTitle = sc.nextLine();
		//sc.nextLine();
		System.out.println("请输入你要添加新闻的内容:");
		String newsContent = sc.nextLine();
		 news = new NewsInfo();
		 news.newsId = newsId;
		 news.newsTitle = newsTitle;
		 news.newsContent = newsContent;
		 list.add(news);
		 for (NewsInfo po :list) {
			 System.out.println(po);
		}
		 
	}
	@Override
	//删除新闻,根据Id号删除新闻
	public void deleteNews(String newsId) {
		if(list.isEmpty()){
			System.out.println("没有你要删除的新闻哦!!!");
		}else{
			for (NewsInfo news : list) {
			if(news.getNewsId().equals(newsId)){//判断集合中是否存在这个ID
				list.remove(news);
			} 
		}
			for (NewsInfo ni :list) {
				System.out.println(ni);
			}	
		}
	}
	
	@Override
	public String toString() {
		return  newsId +"\t"+ newsTitle+"\t\t"+newsContent;
	}
	@Override
	//定义一个方法,显示所以得新闻
	public void showAllNews() {
		if(list.isEmpty()){
			System.out.println("目前还没有任何新闻哦!!!");
		}else{
		for (NewsInfo ni :list) {
			System.out.println(ni);
		}
		}
	}
	
}
////////////////////////////////以上类是实现了接口中的类////////////////////////////////////
package com.homework.demo_4;
import java.util.Scanner;
/*
 * 测试使用ArrayList实现新闻管理系统
 */
public class TestNews {
	public static void main(String[] args) {
		NewsInfo news = new NewsInfo();
		System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<使用ArrayList实现新闻管理系统>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
		while(true){
			System.out.println("1.查询新闻");
			System.out.println("2.添加新闻");
			System.out.println("3.删除新闻");
			System.out.println("4.查询所有新闻");
			System.out.println("请选择功能(1,2,3,4,其中0为退出系统)");
			Scanner sc = new Scanner(System.in);
			int number = sc.nextInt();
			System.out.println("ArrayList新闻内容如下:");
			System.out.println("================================================");
			System.out.println("编号"+"\t标题"+"\t\t内容");
			switch(number){
			case 1:
				sc.nextLine();//消除换行时的空格
				System.out.println("请输入你要查询的编号:");
				String newsId = sc.nextLine();
				news.findNews(newsId);
				break;
			case 2:
				news.addNews(news);
				break;
			case 3:
				sc.nextLine();//消除换行时的空格
				System.out.println("请输入你要删除的新闻编号:");
				String newsId1 = sc.nextLine();
				news.deleteNews(newsId1);
				break;
			case 4:
				news.showAllNews();
				break;
			case 0:
				System.out.println("谢谢使用本系统,欢迎下次光临!!!");
				System.exit(0);
				break;
			}
			System.out.println("================================================");
			 
		}
	}
}
///////////////////////////以上是测试类////////////////////////////////////////////////
原文:http://www.cnblogs.com/wanglu1991/p/4579272.html