用Java怎么做一个查询本月账单的项目代码
时间: 2024-09-25 07:04:37 浏览: 15
在Java中创建一个简单的查询本月账单的项目,我们首先需要设计数据模型,比如`Bill`类,然后处理日期计算,最后编写查询方法。这里是一个简化的示例:
```java
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class MonthlyBillQuery {
private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
// 定义账单类
public static class Bill {
private LocalDate date;
private double amount;
// 构造函数,getters和setters省略
public LocalDate getDate() { return date; }
public double getAmount() { return amount; }
}
// 获取本月账单
public static List<Bill> getThisMonthBills(List<Bill> bills) {
LocalDate today = LocalDate.now();
LocalDate startOfMonth = today.withDayOfMonth(1);
LocalDate endOfMonth = today.withDayOfMonth(today.lengthOfMonth());
return bills.stream()
.filter(bill -> bill.getDate().isAfter(startOfMonth.minusDays(1)) && bill.getDate().isBefore(endOfMonth))
.collect(Collectors.toList());
}
// 示例如何使用
public static void main(String[] args) {
// 假设有一个账单列表
List<Bill> bills = ...; // 实际上从数据库或其他源获取账单
List<Bill> thisMonthBills = getThisMonthBills(bills);
for (Bill bill : thisMonthBills) {
System.out.printf("日期: %s, 金额: %.2f%n", bill.getDate(), bill.getAmount());
}
}
}
```
在这个例子中,我们假设已经有了一个账单列表,并通过`getThisMonthBills`方法筛选出本月的账单。