Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.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 - Fatal编程技术网

JAVA如何从以特定字符串开头的数组中获取所有键?

JAVA如何从以特定字符串开头的数组中获取所有键?,java,Java,我试图从配置文件中获取一些值。我有很多键,只想得到某些值。这些值的键以相同的初始名称开头,结尾稍有变化 有人能快点帮我吗?假设当你说key时你指的是value(如数组中的值) final String PREFIX=“yourPrefix”; for(字符串值:valueList){ if(值。起始值(前缀)){ } 这里是指向java文档的链接 我假设您正在扫描配置文件以查找具有类似前缀的字符串。为什么不尝试将它们分组扫描,而不是在一个hashmap中全部扫描。如果您已经知道指定的前缀,请尝

我试图从配置文件中获取一些值。我有很多键,只想得到某些值。这些值的键以相同的初始名称开头,结尾稍有变化


有人能快点帮我吗?

假设当你说key时你指的是value(如数组中的值)

final String PREFIX=“yourPrefix”;
for(字符串值:valueList){
if(值。起始值(前缀)){
}
这里是指向java文档的链接

我假设您正在扫描配置文件以查找具有类似前缀的字符串。为什么不尝试将它们分组扫描,而不是在一个hashmap中全部扫描。如果您已经知道指定的前缀,请尝试为每个前缀创建一个arraylist,并在扫描时接收给定前缀并相应地添加它

StringTokenizer s = new StringTokenizer ("Configuration File : Server_intenties = keyId_11503, keyId_11903 : Server_passcodes = keyCode_1678, keyCode_9893", " ");
ArrayList<String> keyCode = new ArrayList();
ArrayList<String> keyId = new ArrayList();


while(s.hasMoreTokens){
    String key = s.nextToken

    if(key.contains("keyId")){
         keyId.add(key);
    }

    if(key.contains("keyCode")){
         keyCode.add(key);
    }
}


System.out.println(keyCode);
System.out.println(keyId);
StringTokenizer s=new-StringTokenizer(“配置文件:Server_intenties=keyId_11503,keyId_11903:Server_passcodes=keyCode_1678,keyCode_9893,”);
ArrayList keyCode=新的ArrayList();
ArrayList keyId=新的ArrayList();
而(s.hasMoreTokens){
字符串键=s.nextToken
if(key.contains(“keyId”)){
keyId.add(key);
}
if(key.contains(“keyCode”)){
keyCode.add(key);
}
}
System.out.println(键码);
System.out.println(keyId);

你尝试过什么?你不能循环遍历键并返回以该字符串开头的键吗?考虑到
数组没有
键,我相信你的意思是
映射
,而不是
数组
StringTokenizer s = new StringTokenizer ("Configuration File : Server_intenties = keyId_11503, keyId_11903 : Server_passcodes = keyCode_1678, keyCode_9893", " ");
ArrayList<String> keyCode = new ArrayList();
ArrayList<String> keyId = new ArrayList();


while(s.hasMoreTokens){
    String key = s.nextToken

    if(key.contains("keyId")){
         keyId.add(key);
    }

    if(key.contains("keyCode")){
         keyCode.add(key);
    }
}


System.out.println(keyCode);
System.out.println(keyId);