Java根据月数据计算累计同比
时间: 2024-05-04 09:18:31 浏览: 9
假设你有一个包含每个月数据的数组,例如:
```java
double[] monthlyData = {1000, 1200, 1300, 1100, 1500, 1400, 1600, 1700, 1800, 1900, 2000, 2100};
```
要计算每个月的同比增长率,可以使用以下代码:
```java
double[] yearlyData = new double[monthlyData.length];
yearlyData[0] = monthlyData[0];
for (int i = 1; i < monthlyData.length; i++) {
yearlyData[i] = yearlyData[i-1] + monthlyData[i];
}
for (int i = 0; i < yearlyData.length; i++) {
double yearAgoData = i < 12 ? yearlyData[0] : yearlyData[i-12];
double growthRate = (yearlyData[i] - yearAgoData) / yearAgoData;
System.out.println("Month " + (i+1) + " growth rate: " + growthRate);
}
```
这个代码首先创建一个新数组 `yearlyData` 来存储每个月的累计数据。然后使用一个循环将每个月的数据累加到 `yearlyData` 中。最后再次循环 `yearlyData` 中的每个元素,计算该月的同比增长率并打印输出。如果该月是前 12 个月中的一个,则比较该月的累计数据与第一个月的累计数据(即去年同期的数据);否则,比较该月的累计数据与前一年同月的累计数据。
相关推荐
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)