Java 如何将一行中的元素解析为不同的哈希表?

Java 如何将一行中的元素解析为不同的哈希表?,java,hashmap,Java,Hashmap,假设我有一个字母a-z格式的文件: a,9,1 b,2,4 *,0,2 我有两个名为hashA,hashB的散列映射 现在我需要编写一个代码,使字母表成为一个键,旁边的数字成为一个值。所以它必须是这样的:hashA有(a,9)和hashB有(a,1) 我的部分代码是: public static void constructLetterMaps() throws FileNotFoundException{ File pointvals = new File(letterFileLoc);

假设我有一个字母a-z格式的文件:

a,9,1
b,2,4
*,0,2
我有两个名为hashA,hashB的散列映射 现在我需要编写一个代码,使字母表成为一个键,旁边的数字成为一个值。所以它必须是这样的:hashA有(a,9)和hashB有(a,1) 我的部分代码是:

public static void constructLetterMaps() throws FileNotFoundException{
  File pointvals = new File(letterFileLoc);
  Scanner pts = new Scanner(pointvals);
  while (pts.hasNext()){
  char alpha = (pts.next()).charAt(0);

那么我如何解析成不同的散列映射,并对每一行进行跟踪呢

例如,您可以逐行读取文件,将一行拆分为字符串数组。按照您的意愿将值存储到不同的
HashMaps
中是非常简单的

请参阅一些片段来演示这个想法

Map<String, String> hashA = new HashMap<>();
Map<String, String> hashB = new HashMap<>();

String line = "a,9,1"; // the line from the file
String[] parts = line.split(","); // split the lines into parts
hashA.put(parts[0], parts[1]); // put "a", "9"
hashB.put(parts[0], parts[2]); // put "a", "1"

System.out.println("hashA = " + hashA);
System.out.println("hashB = " + hashB);
Map hashA=new HashMap();
Map hashB=新的HashMap();
字符串line=“a,9,1”//文件中的行
String[]parts=line.split(“,”)//把线分成几部分
hashA.put(部分[0],部分[1]);//把“a”,“9”
hashB.put(部分[0],部分[2]);//把“a”,“1”
System.out.println(“hashA=“+hashA”);
System.out.println(“hashB=“+hashB”);

你的开始很好,不要放弃并寻找答案。提示:不使用字符,您可以用逗号分割字符串,得到一个包含3项的字符串数组。祝你好运