Java写一个新闻类
1 package com.jredu.ch10; 2 3 import java.util.Scanner; 4 5 /** 6 * 新闻类 7 * @author Administrator 8 * 9 */ 10 public class News { 11 12 private int id;//编号 13 private String title;//标题 14 private String content;//内容 15 private String addUser;//添加人 16 private String imgPath;//图片 17 private String pubDate;//发布时间 18 private boolean isShow;//是否显示 19 20 /** 21 * 无参构造 22 */ 23 public News(Scanner sc) { 24 super(); 25 System.out.print("请输入新闻编号"); 26 this.id=sc.nextInt(); 27 // TODO Auto-generated constructor stub 28 init(sc); 29 } 30 31 /** 32 * 带编号的有参构造 33 * @param id 34 */ 35 public News(Scanner sc,int id) { 36 super(); 37 // TODO Auto-generated constructor stub 38 this.id=id; 39 // TODO Auto-generated constructor stub 40 init(sc); 41 } 42 43 public News(int id, String title, String content, String addUser, String imgPath, String pubDate, boolean isShow) { 44 super(); 45 this.id = id; 46 this.title = title; 47 this.content = content; 48 this.addUser = addUser; 49 this.imgPath = imgPath; 50 this.pubDate = pubDate; 51 this.isShow = isShow; 52 } 53 54 public void init(Scanner sc) { 55 System.out.print("请输入标题"); 56 this.title=sc.next(); 57 System.out.print("请输入内容"); 58 this.content=sc.next(); 59 System.out.print("请输入发布者"); 60 this.addUser=sc.next(); 61 System.out.print("请输入发布时间"); 62 this.pubDate=sc.next(); 63 System.out.print("请输入图片路径"); 64 this.imgPath=sc.next(); 65 System.out.print("是否显示(y/n)"); 66 this.isShow=sc.next().equals("y")?true:false; 67 } 68 69 public int getId() { 70 return id; 71 } 72 73 public void setId(int id) { 74 this.id = id; 75 } 76 77 public String getTitle() { 78 return title; 79 } 80 81 public void setTitle(String title) { 82 this.title = title; 83 } 84 85 public String getContent() { 86 return content; 87 } 88 89 public void setContent(String content) { 90 this.content = content; 91 } 92 93 public String getAddUser() { 94 return addUser; 95 } 96 97 public void setAddUser(String addUser) { 98 this.addUser = addUser; 99 } 100 101 public String getImgPath() { 102 return imgPath; 103 } 104 105 public void setImgPath(String imgPath) { 106 this.imgPath = imgPath; 107 } 108 109 public String getPubDate() { 110 return pubDate; 111 } 112 113 public void setPubDate(String pubDate) { 114 this.pubDate = pubDate; 115 } 116 117 public boolean isShow() { 118 return isShow; 119 } 120 121 public void setShow(boolean isShow) { 122 this.isShow = isShow; 123 } 124 125 }
package com.jredu.ch10; /** * 新闻业务类 * @author Administrator * */ public class NewsService { //所有的新闻 private News[] news1=new News[100]; private int index;//新闻的下标 /** * 添加新闻 * @param news * @return 添加新闻成功时,返回true,添加失败时返回false */ public boolean addNews(News news) { if(index<news1.length) { for(int i=0;i<index;i++) { if(news1[i].getId()==news.getId()) { System.out.println("该新闻编号已经存在,无法添加"); return false; } } news1[index]=news; index++; return true; } return false; } /** * 删除新闻 * @param id * @return 当新闻删除成功时,返回true,删除失败时,返回false */ public boolean deleteNews(int id) { //循环遍历所有的新闻 for(int i=0;i<index;i++) { //遍历每一条新闻不为空,并且id等于传入的id时 if(news1[i]!=null&&news1[i].getId()==id) { //删除这条新闻 news1[i]=null; return true; } } return false; } /** * 更新新闻 * @param news */ public boolean updateNews(News news) { //循环遍历所有的新闻 for(int i=0;i<index;i++) { //遍历每一条新闻不为空,并且id等于传入的id时 if(news1[i]!=null&&news1[i].getId()==news.getId()) { //更新这条新闻 news1[i]=news; return true; } } return false; } /** * 显示新闻 */ public void showNews() { News news=null; for(int i=0;i<index;i++) { if(news1[i]!=null&&news1[i].isShow()) { news=news1[i]; System.out.println("编号:"+news.getId()+"\t标题:"+news.getTitle()); System.out.println("作者:"+news.getAddUser()+"\t发布时间:"+news.getPubDate()); System.out.println("\t"+news.getContent()); System.out.println("图片地址:"+news.getImgPath()); } } } }
1 package com.jredu.ch10; 2 3 import java.util.Scanner; 4 5 public class NewsTest { 6 7 public static void main(String[] args) { 8 NewsService service=new NewsService(); 9 Scanner sc=new Scanner(System.in); 10 //进入系统,让用户选择功能 11 System.out.println("*********欢迎进入新闻管理系统*********"); 12 while(true) { 13 System.out.println("1.添加新闻\t2.删除新闻\t3.更新新闻\t4.查看新闻\tn.退出系统"); 14 System.out.println("请选择功能"); 15 String code=sc.next(); 16 boolean isReturn=false; 17 switch(code) { 18 //添加新闻 19 case "1": 20 News news=new News(sc); 21 boolean isAdd=service.addNews(news); 22 if(!isAdd) { 23 System.out.println("添加新闻失败"); 24 } 25 break; 26 //删除新闻 27 case "2": 28 System.out.print("请输入编号"); 29 boolean isDelete=service.deleteNews(sc.nextInt()); 30 if(!isDelete) { 31 System.out.println("删除新闻失败"); 32 } 33 break; 34 //更新新闻 35 case "3": 36 System.out.print("请输入编号"); 37 News news1=new News(sc,sc.nextInt()); 38 boolean isUpdate=service.updateNews(news1); 39 if(!isUpdate) { 40 System.out.println("更新新闻失败"); 41 } 42 break; 43 //查看新闻 44 case "4": 45 service.showNews(); 46 break; 47 //退出系统 48 default: 49 isReturn=true; 50 break; 51 } 52 if(isReturn) { 53 break; 54 } 55 } 56 System.out.println("谢谢使用,再见"); 57 sc.close(); 58 } 59 60 }