zoukankan      html  css  js  c++  java
  • 利用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<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 +" "+ newsTitle+" "+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("编号"+" 标题"+" 内容");
    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("================================================");

    }
    }
    }

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

  • 相关阅读:
    【转】TCP协议的无消息边界问题
    【转】Log4net用法
    【转】微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引
    关于Asp.Net MVC 中 UpdateModel 的未能更新***模型的 解决方案!
    批准加强军队信息安全工作意见
    iOS--开发从入门到精通
    iOS-开发者账号与证书
    iOS--高级技术
    iOS-----App闪退,程序崩溃---解决方案
    iOS-运行时机制
  • 原文地址:https://www.cnblogs.com/wanglu1991/p/4579272.html
Copyright © 2011-2022 走看看