본문 바로가기

Java

#030 add함수 추가 및 delete 기능 구현

add 함수 추가

int id = add(title, body); //추가 후

private int add(String title, String body) {
		Article article = new Article();

		article.id = lastArticleId + 1;
		article.title = title;
		article.body = body;


		articles[articlesSize] = article;
		articlesSize++;
		lastArticleId = article.id;
		
		return article.id;
	}

 

게시물 삭제 기능 (delete)

else if (command.startsWith("article delete")) {
				String[] commandBits = command.split(" ");
				System.out.println("*  게시글 삭제  *");

				if (commandBits.length <= 2) {
					System.out.println("삭제하고 싶은 게시글 번호와 함께 입력해 주세요.");
					continue;
				}

				int inputedId = Integer.parseInt(commandBits[2]);
				Article selectArticle = getArticle(inputedId);

				if (selectArticle == null || selectArticle.id == 0) {
					System.out.printf("%d번째 게시글은 존재하지 않습니다.\n", inputedId);
					continue;
				}

				remove(inputedId);
				System.out.printf("%d번 게시물이 삭제되었습니다.\n", inputedId);

			} else {
				System.out.println("등록되지 않은 명령어 입니다.");
				continue;
			}

		}
		sc.close();
	}

	private void remove(int id) {
		int index = getIndexById(id);

		if (index == -1) {
			return;
		}
		for (int i = index + 1; i < articlesSize(); i++) {
			articles[i - 1] = articles[i];
		}
		articlesSize--;
	}

	private int getIndexById(int id) {
		for (int i = 0; i < articlesSize(); i++) {
			if (articles[i].id == id) {
				return i;
			}
		}
		return 0;
	}

 

 

 

*전체적인 일상은 노션을 통해 작성하고 있습니다.

링크 : www.notion.so/009-f23b45eedb564f05a30c9d4e4df1cca7