Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java//运算符+;未为参数类型字符串void定义_Java_Operators_Minecraft Forge - Fatal编程技术网

Java//运算符+;未为参数类型字符串void定义

Java//运算符+;未为参数类型字符串void定义,java,operators,minecraft-forge,Java,Operators,Minecraft Forge,这是我儿子正在做的一个项目,他请我帮助他,但是我目前对“Java”一无所知,因此我发布了他想要回答的问题 “我正在尝试为“Minecraft”制作一个mod,在编写时出现了一个错误,我很难理解任何想法??” //类HypedMetaItemBlock import net.minecraft.*; public class HypedMetaItemBlock extends ItemBlock { public HypedMetaItemBlock(Block block) { su

这是我儿子正在做的一个项目,他请我帮助他,但是我目前对“Java”一无所知,因此我发布了他想要回答的问题

“我正在尝试为“Minecraft”制作一个mod,在编写时出现了一个错误,我很难理解任何想法??”

//类HypedMetaItemBlock

import net.minecraft.*;

public class HypedMetaItemBlock extends ItemBlock {
public HypedMetaItemBlock(Block block) {
    super(block);
    setHasSubtypes(true);

}

@Override
public String getUnlocalizedName(ItemStack stack) {
    String name = "tile." + ((IHypedMetaBlock)Block.getBlockFromItem(stack.getItem())).getNames()[stack.getMetadata()] + ((IHypedMetaBlock)Block.getBlockFromItem(stack.getItem())).getSuffix();    
    return name;
}

@Override
public int getMetadata(int par1) {
    return par1;
     }
}
这是IHypedMetaBlock的类,以备需要

public interface IHypedMetaBlock {

public void addNames();
public void getSuffix();
public String[] getNames();

}

正如错误所说,当您对
字符串
void
类型使用
+
运算符时,Java不知道该做什么

主要问题似乎是这个方法:
getSuffix()
。该方法是
void
,意味着它不返回任何内容。这违反了Java命名约定,因为通常,
getXX
方法会返回一些东西


您需要确保
getSuffix()
返回某些内容,或者重新考虑您的方法。

getSuffix方法当前正在返回一个void。我的猜测是,它不应该返回一个空白。仅从方法名称来看,它听起来应该返回一个字符串


但是如果它确实应该返回一个void,那么就不能将方法结果作为字符串使用。

((IHypedMetaBlock)Block.getBlockFromItem(stack.getItem())。getSuffix()
不返回任何内容。您不能在字符串中添加任何内容。@Stephen C谢谢您的建议。我会告诉他要长大,不要再像个孩子了谢谢你的帮助我要告诉我儿子:)