java - 是否可以对 InetAddress 类型的变量使用 toString

标签 java

我正在用java在链表上编写一个程序。当我使用 toString 返回下面代码的 IP 地址和 PC 时,出现错误。

package linked;

import java.net.InetAddress;

public class Work {
    private InetAddress IP;
    private String PC;

    public Work(InetAddress IP, String PC){
        this.IP=IP;
        this.PC=PC;
    } 
    public InetAddress getIP(){
        return IP;
    }
    public String getPC(){
        return PC;
    }
    @Override
    public String toString() {
        return IP + ' ' + PC;
    }
}

@Override 中出现错误,内容为

bad operand types for binary operator '+' first type: InetAddress
second type: char

最佳答案

使用这个

@Override
public String toString() {
    return IP.toString() + " " + PC; 
}

IP.toString() 将为您提供 IP 对象的所有属性。如果您只需要主机地址,则使用 IP.getHostAddress() + ""+ PC;

' 用于 char 数据类型," 用于 java 中的 String 数据类型。 + 运算符被重载以进行数字运算或连接 String。因此,它将连接字符串。

关于java - 是否可以对 InetAddress 类型的变量使用 toString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49702153/

相关文章:

java - axis 在发送 XML 之前会向其添加什么内容?

java - 如何使用 Maven 安装 Processing?

JavaFX ChoiceBox 上下文菜单位置

java - 将输入处理为比特流

java - 使用 DirectoryChooser 保存文件时访问被拒绝

Java/野蝇: Threads piling up/Eclipse shows one additional running thread for each request

java - 从 Java 堆转储中查看 StringBuffer 或 char[] 的内容

java - 为什么eclipse不显示任何信息

java - 由程序控制的 eclipse Action ?

java - eclipse 插件创建 hibernate 带注释的实体?