Springboot接收web前端传送的请求对象实体类,该实体类有一个属性的类型是ArrayList<Long>,如何才能使该值不出现精度误差
时间: 2024-05-23 13:15:04 浏览: 10
首先,精度误差在实体类的定义上不应该出现。ArrayList<Long>表示一个long类型的数组列表,long类型的整数在Java中使用64位二进制表示,所以不会存在精度误差问题。如果您需要将其转换为字符串类型进行传输,建议使用JSON格式来转换,以保持数据的准确性和精度。同时,可以通过指定数字格式化方式,强制保留完整的精度,例如使用 DecimalFormat 类。
相关问题
如何把一个集合的数据 根据父级id 分类为Map<Long,Liset<User>>
你可以使用Java 8的Stream API来实现这个功能。具体的实现方法如下所示:
```java
public Map<Long, List<User>> groupByParentId(List<User> users) {
return users.stream()
.collect(Collectors.groupingBy(User::getParentId));
}
```
其中,`User`是代表用户的实体类,包含`id`和`parentId`两个属性。`groupByParentId`方法接收一个`List<User>`类型的参数,返回一个`Map<Long, List<User>>`类型的结果。`collect`方法结合`groupingBy`方法可以实现按照`User`对象的`parentId`属性进行分组,并且将分组结果存储到`Map`中返回。
需要注意的是,如果某个`User`对象的`parentId`属性为`null`,那么它会被分到`Map`中的`null`键对应的列表中。如果你希望将这些对象分到其他键对应的列表中,可以使用`groupingBy`方法的第二个参数指定一个默认的键。例如,你可以使用下面的代码将所有`parentId`为`null`的对象分到`-1`键对应的列表中:
```java
public Map<Long, List<User>> groupByParentId(List<User> users) {
return users.stream()
.collect(Collectors.groupingBy(User::getParentId, Collectors.toList(), () -> new HashMap<Long, List<User>>(){{put(-1L, new ArrayList<>());}}));
}
```
这里使用了一个匿名内部类来创建一个只包含`-1`键对应的空列表的`HashMap`对象,并将其作为第三个参数传递给`groupingBy`方法。
java实体类构造一个方法将其Long类型的三个不为空的属性以string数组返回
可以使用以下代码构造一个方法将Java实体类中Long类型的三个不为空的属性以String数组返回:
```java
public String[] getNonEmptyLongProperties() {
List<String> properties = new ArrayList<>();
if (id != null) {
properties.add(String.valueOf(id));
}
if (timestamp != null) {
properties.add(String.valueOf(timestamp));
}
if (quantity != null) {
properties.add(String.valueOf(quantity));
}
return properties.toArray(new String[0]);
}
```
该方法将会返回一个只包含非空Long属性的值的String数组。如果三个属性都为空,该方法将返回一个空数组。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)