π° Personal Finance Management System (Console-Based)
A simple Java-based console application to help users track their income, expenses, and transactions with category-wise filtering and deletion support.
π Features
β Add income and expenses
β Automatically calculate and update balance
β Categorize expenses (Food, Rent, Entertainment, Others)
β View all transactions
β Delete individual transactions with balance adjustment
β Filter transactions by category
β Get summary of total income, expenses, and balance
β Console-based, beginner-friendly project
π Technologies Used
Java (Standard Edition)
Java Collections (ArrayList, HashMap)
Scanner for user input
OOP concepts (Classes, Objects, Encapsulation)
π Project Structure
org.example/ β βββ Main.java // Entry point - handles user interaction βββ User.java // Represents the user βββ Account.java // Manages income, expenses, balance, and categories βββ Transaction.java // Stores details of a transaction
π How to Run
-
Clone the repository or Download ZIP
-
Open the project in IntelliJ IDEA (or any Java IDE)
-
Run Main.java
-
Follow on-screen instructions from the console
πΈ Sample Output
Hello, welcome to Personal Finance Management System! Enter name:
John Enter initial income: 10000 Welcome John! Your initial income is RS 10000.0 Choose:
- Add Income
- Add Expense
- View Balance Summary
- View Transactions
- Delete Transaction
- Filter Transaction by Category
- Exit
π‘ Use Case
This is a basic-level project ideal for:
Java beginners to practice OOP concepts
Demonstrating console-based user interaction
Learning how to use data structures like ArrayList and HashMap
Building a finance-tracking logic in Java
π Future Enhancements
Add file storage for saving/loading data
Generate monthly reports
Add budget alerts
Build GUI using JavaFX or Swing
Convert into a web application
π§βπ» Author
π©βπ» Fathima Yasmin Farina M I