storageList4.get(i).val 为什么是这样val storageHomeVo = storageList4.get(i);不是 StorageHomeVo storageHomeVo = storageList4.get(i); 怎么更改
时间: 2024-09-11 08:02:40 浏览: 34
在Java中,`storageList4.get(i).val`这种表达方式可能是因为`storageList4`是一个包含对象的列表,而这些对象是`val`属性的拥有者。如果你要使用`val`属性,你需要先获取列表中的对象。
例如,如果你有一个`StorageHomeVo`类,它有一个名为`val`的属性,你可以这样使用:
```java
StorageHomeVo storageHomeVo = storageList4.get(i);
int value = storageHomeVo.val;
```
如果你直接写`storageList4.get(i).val`,是因为你只是想使用`val`属性的值,并不想把整个对象赋值给一个变量。
关于`storageList4.get(i);`,它看起来像是返回了一个`StorageHomeVo`类型的对象,这个对象有一个`val`属性。而`StorageHomeVo storageHomeVo = storageList4.get(i);`这种形式是将获取的对象直接赋值给了`storageHomeVo`这个变量。
如果`storageList4.get(i);`返回的不是`StorageHomeVo`类型,那么你需要确保它返回正确的类型,或者进行类型转换。如果`storageList4.get(i);`确实返回的是`StorageHomeVo`类型,而你想要使用类型推断来简化代码,可以使用`var`关键字:
```java
var storageHomeVo = storageList4.get(i);
int value = storageHomeVo.val;
```
这里`var`关键字让编译器自动推断`storageHomeVo`的类型。
阅读全文