Required type: Long Provided: Integer
时间: 2024-01-07 16:05:16 浏览: 101
这个错误通常发生在你试图将一个整数类型的值分配给一个需要长整数类型的变量或参数。你可以通过将整数转换为长整数类型来解决这个问题,例如:
```
int i = 10;
long l = (long) i;
```
或者在方法调用时使用长整数类型的参数,例如:
```
public void myMethod(long l) {
// code here
}
int i = 10;
myMethod((long) i);
```
相关问题
Long projectId = bisTower.getProjectId();报错Required type: Long Provided: Integer
这个问题通常是因为编译器在自动拆箱时出现了错误,可以尝试将其显式转换为Long类型,如下所示:
```java
Long projectId = Long.valueOf(bisTower.getProjectId());
```
或者使用Long类型的构造函数:
```java
Long projectId = new Long(bisTower.getProjectId());
```
另外,如果你确定bisTower.getProjectId()的返回值始终为Long类型,可以直接强制类型转换:
```java
Long projectId = (Long) bisTower.getProjectId();
```
Required type: CharSequence Provided: Long
这个错误通常发生在将一个Long类型的值传递给期望CharSequence类型的函数或方法时。CharSequence是一个Java接口,代表一个字符序列,例如字符串。
要解决这个问题,您需要将Long类型的值转换为CharSequence类型。可以使用toString()方法将Long转换为字符串,然后将其传递给期望CharSequence的函数或方法。例如:
```
Long myLong = 123456L;
CharSequence myCharSequence = myLong.toString();
```
或者,在函数或方法中直接将Long类型的值转换为字符串:
```
public void myMethod(CharSequence myCharSequence) {
String myString = myCharSequence.toString();
// do something with myString
}
Long myLong = 123456L;
CharSequence myCharSequence = myLong.toString();
myMethod(myCharSequence);
```
阅读全文