Java 转换字符串或字符串数组为HashMap

Java 转换字符串或字符串数组为HashMap

考虑到一个字符串对象,它包含用逗号分隔的学生姓名和卷号,每个学生包含用冒号分隔的姓名和卷号。现在需要将String转换为Map对象,使每个学生的卷号成为HashMap的键,而名字成为HashMap对象的值。

为了将字符串转换为HashMap,该过程分为两部分。

  • 输入的字符串被转换为一个字符串数组作为输出。
  • 作为一个字符串数组的输入被转换成HashMap。

输入的字符串元素如下。

输入 : "Aashish:1, Bina:2, Chintu:3"

步骤 :

  • 第一阶段:输入的字符串被转换为一个字符串数组作为输出。
  • 第二阶段:将输入的字符串数组转换为HashMap。

步骤1:

  • 首先,我们用逗号分割字符串,并将其存储在一个数组部分。分割后,我们有以下内容。
"Aashish:1","Bina:2", "Chintu:3"
  • 然后迭代部分并分割学生数据,以获得学生姓名和卷号。并设置卷号为键,姓名为HashMap的值。

步骤2:

我们也可以将一个字符串数组转换为HashMap。假设我们有一个学生姓名的字符串数组和一个卷号数组,我们想将其转换为HashMap,这样卷号就成为HashMap的键,姓名就成为HashMap的值。

注意: 两个数组的大小应该是一样的。

输入的字符串元素数组如下,将在第1阶段输出

String stuName[] = {"Aashish","Bina","Chintu"}
Integer stuRollNo[] = {1,2,3}

步骤 :

  • 遍历数组,并在HashMap中设置卷号为键,名称为值。

第一阶段 – 字符串到字符串阵列

// Convert String or String array to HashMap In Java
  
// Phase 1: Input- String converted to ArrayofStrings
  
// Importing java generic libraries
import java.util.*;
  
class GFG {
    
  // Main driver method
    public static void main(String[] args)
    {
        // String object that contains the student name and
        // roll number separated by a comma
        String student = "Aashish:1, Bina:2, Chintu:3";
  
        // New HashMap obj
        Map<String, String> hashMap
            = new HashMap<String, String>();
  
        // split the String by a comma
        String parts[] = student.split(",");
  
        // iterate the parts and add them to a HashMap
        for (String part : parts) {
  
            // split the student data by colon to get the
            // name and roll number
            String stuData[] = part.split(":");
  
            String stuRollNo = stuData[0].trim();
            String stuName = stuData[1].trim();
  
            // Add to map
            hashMap.put(stuRollNo, stuName);
        }
  
        // Print hashMap
        System.out.println("String to HashMap: " + hashMap);
    }
}

输出

String to HashMap: {Chintu=3, Bina=2, Aashish=1}

第二阶段 – 字符串到数组到HashMap

// Convert String or String array to HashMap In Java
  
// Phase 2: Input- Array of strings converted to HashMap.
  
// Importing java generic libraries
import java.util.*;
  
class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
        // String array that contains the student name
        String stuName[] = { "Aashish", "Bina", "Chintu" };
  
        // Integer array that contains roll number of the
        // students
        Integer stuRollNo[] = { 1, 2, 3 };
  
        // New HashMap obj
        Map<Integer, String> hashMap
            = new HashMap<Integer, String>();
  
        // Iterating over array of strings
        for (int i = 0; i < stuName.length; i++) {
  
            // And set roll no as key and the name as value
            hashMap.put(stuRollNo[i], stuName[i]);
        }
  
        // Printing HashMap
        System.out.println("String to hashmap: " + hashMap);
    }
}

输出

String to hashmap: {1=Aashish, 2=Bina, 3=Chintu}

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程