Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/379.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 我从方法中得到了四个字符串值。如何组合字符串?_Java_String_Input - Fatal编程技术网

Java 我从方法中得到了四个字符串值。如何组合字符串?

Java 我从方法中得到了四个字符串值。如何组合字符串?,java,string,input,Java,String,Input,因此,我将从一个方法中获取这些字符串的值,我需要将它们合并为一个文件地址,但我不能像在file\u PATH\u string上那样合并字符串。我试着使用concat方法,但它也不起作用。文件路径字符串将始终等于第一个字符串,在本例中为世界路径 public static final String WORLD_PATH = "The World/"; public static String CONTINENTS_NAME=""; public static String COUNTRY_NAM

因此,我将从一个方法中获取这些字符串的值,我需要将它们合并为一个文件地址,但我不能像在file\u PATH\u string上那样合并字符串。我试着使用concat方法,但它也不起作用。文件路径字符串将始终等于第一个字符串,在本例中为世界路径

public static final String WORLD_PATH = "The World/";
public static String CONTINENTS_NAME="";
public static String COUNTRY_NAME="";
public static String FILE_TYPE="";

public static String FILE_PATH_STRING = WORLD_PATH + CONTINENTS_NAME + COUNTRY_NAME + FILE_TYPE;
public static File FILE_PATH = new File(FILE_PATH_STRING);
它的工作原理应该类似于,当我单击地图时,方法将向我返回区域名称,我将它们存储在这些静态字符串中。我试过调试。所有字符串都有一个值,它们都是正确的。但是FILE_PATH_字符串只等于我放在那里的第一个字符串。 在我运行程序之后, 大陆名称=亚洲 国家/地区名称应等于大陆/地区名称,因为这是我设置文件地址的方式 FILE_PATH=.png这是加载映射的方法

我很好奇,你如何“从一个方法中得到四个字符串值”——你能告诉我们这一点吗?因为如果是这样的话:

getStrings(WORLD_PATH, CONTINENTS_NAME, COUNTRY_NAME, FILE_TYPE);
这就是问题所在-函数
getStrings()
无法修改传入的字符串

当然,我只是胡乱猜测,因为你没有提供足够的信息

你能做一些类似于:

String path = getWorldPath() + getContinent() + getCountry() + getFileType();
也就是说,实现四个独立的方法来获得路径的四个独立部分

否则,您必须定义一个类型,该类型可以同时返回所有四个字符串,或者在容器(如数组)中返回它们:

void test()
{
    String[] pathParts = getStrings();
    FILE_PATH_STRING = pathParts[0] + pathParts[1] + pathParts[2] + pathParts[3];
}

String[] getStrings()
{
    String[] ret = new String[4];
    ret[0] = "The world";
    ret[1] = "South America";
    ret[2] = "Chile";
    ret[3] = ".txt";
    return ret;
}

当然,如果您要做的只是连接字符串,那么可以在
getStrings()
函数中进行连接。

您确定这不是因为其他字符串为空吗?您可以将代码发布到尝试concat等的位置吗?欢迎使用。给出一个示例输出,输出应该如何。所以so社区将能够帮助您:)。嗨@BobbyAlexander,在询问此类问题之前,请先看一下标签questions@anto我相信当时没有标记。hmmmmm那么我需要4个get方法和4个set方法,听起来很完整。我的方法不返回字符串。我将这些值存储在静态变量中,当我得到它时,方法是void。请发布代码?此外,您应该尽最大努力避免使用静态变量。只有极少数情况下您真正需要一个静态变量。