Integer.toString(Person::getSalary)为什么报错
时间: 2024-03-04 09:49:21 浏览: 14
这是因为`Integer.toString()`方法需要传入一个整数作为参数,而`Person::getSalary`是一个方法引用,它表示一个方法而不是一个整数。如果你想要调用`Integer.toString()`方法将`Person`对象的`salary`属性转换为字符串,可以使用以下代码:
```
Person person = new Person();
String salaryString = Integer.toString(person.getSalary());
```
或者使用Lambda表达式:
```
Person person = new Person();
String salaryString = Integer.toString(person -> person.getSalary());
```
相关问题
java里Integer.toString和Integer.toHxSring的区别
在Java中,`Integer.toString()`和`Integer.toHexString()`是`Integer`类提供的两个方法,用于将整数转换为字符串表示。
`Integer.toString()`方法接受一个整数参数,并返回该整数的字符串表示。它可以接受一个可选的参数,用于指定要使用的基数(进制)。如果不指定基数,默认使用十进制。以下是使用`Integer.toString()`方法的示例:
```java
int number = 10;
String str = Integer.toString(number); // 十进制
System.out.println(str); // 输出 "10"
String binaryStr = Integer.toString(number, 2); // 二进制
System.out.println(binaryStr); // 输出 "1010"
String hexStr = Integer.toString(number, 16); // 十六进制
System.out.println(hexStr); // 输出 "a"
```
`Integer.toHexString()`方法是一个特定于十六进制的方法,它将给定的整数转换为十六进制字符串表示。它不需要指定基数,因为它总是将整数转换为十六进制。以下是使用`Integer.toHexString()`方法的示例:
```java
int number = 10;
String hexStr = Integer.toHexString(number);
System.out.println(hexStr); // 输出 "a"
```
因此,`Integer.toString()`方法可以接受一个可选的基数参数,并允许将整数转换为不同进制的字符串表示,而`Integer.toHexString()`方法专门用于将整数转换为十六进制字符串表示。
Integer.toString用法
Integer.toString()方法用于将一个整数(int)转换为字符串(String)。它的语法如下:
public static String toString(int i)
参数 i 表示要转换的整数。
示例代码:
int num = 123;
String strNum = Integer.toString(num);
System.out.println(strNum); // 输出 123
注意:Integer.toString()与String.valueOf()方法作用相同,都是将整数转换为字符串,但是Integer.toString()是静态方法,而String.valueOf()是实例方法。