利用ArrayList实现简单的管理系统

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 list = new ArrayList();

@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("================================================");

}
}
}

///////////////////////////以上是测试类////////////////////////////////////////////////

转载于:https://www.cnblogs.com/wanglu1991/p/4579272.html

你可能感兴趣的:(利用ArrayList实现简单的管理系统)