【问题标题】:String to List with index in java在java中列出带有索引的字符串
【发布时间】:2015-12-08 11:53:13
【问题描述】:

我想像这样转换一个字符串:

[{firstname=yoan,lastname=spark,age=30}]

到一个以名字、姓氏和年龄为索引的 ArrayList

【问题讨论】:

  • 欢迎来到 Stack Overflow。你已经告诉我们你想做什么,但没有表明你已经走了多远。 Stack Overflow 不是一个代码编写服务——你应该向我们展示你到目前为止的进展,并考虑如果名字中有逗号会发生什么。也不清楚您在这里所说的“作为索引”是什么意思 - 您是指属性吗?
  • 我想将此字符串转换为 XML 格式所以我应该使用 ArrayList 来执行此操作 => 结果:<firstname>yoan<firstname><lastname>spark<lastname><age>yoan<age> firstname, lastname 和 age 必须是 ArrayList 的索引
  • 我不认为你的问题那么糟糕。看来您是新用户,仍在学习 java。在发布之前,您应该尝试研究一下您的问题。我进入谷歌并搜索了“Java 使用字符串作为索引”尝试一下,看看你得到了什么。似乎得到你想要的东西需要一点工作,这让我相信可能有更好的方法来做你真正想做的事情。从你的问题中无法判断。您会发现,您在问题中投入的精力越多,您从社区中获得的答案就越好。祝你好运

标签: java string arraylist


【解决方案1】:

实现所需结果的最佳方法是使用 java 的 Map。假设您使用 HashMap 键和值作为字符串。然后将键作为名字,姓氏和年龄将作为您的索引。

【讨论】:

    【解决方案2】:

    尝试为此使用地图。您将完成所需的结果。

    HashMap hashMap= new HashMap();
    hashMap.put("firstname", "yoan");
    hashMap.put("lastname", "spark");
    hashMap.put("age", "63");
    //to get object from map you can iterate 
        Iterator keyIterator = hashMap.keySet().iterator();
                while(keyIterator.hasNext()) {
                    String key = (String)keyIterator.next();
                    System.out.println("Field=" + key + "  value=" + hashMap.get(key));
                }
    

    【讨论】:

      【解决方案3】:

      您可能希望使用要查找的数据创建一个 Person 对象。

      public class Person {
      public String firstname;
      public String lastname;
      public String age;
          public Person(String firstnameinput, String lastnameinput, String ageinput) {
              firstname = firstnameinput;
              lastname = lastnameinput;
              age = ageinput;
          }
      }
      

      然后创建一个函数,根据名字、姓氏或年龄获取 Person。

      public Person getPerson(String find, Person[] l) {
          for (int i = 0; i < l.length; i++) {
              Person p = l[i];
              String a = p.age;
              String fn = p.firstname;
              String ln = p.lastname;
              if (find.equals(a) || find.equals(fn) || find.equals(ln)) {
                  return p;
              }
          }
          return null; //if the person does not exist in the list
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-01-20
        • 2018-01-13
        • 1970-01-01
        • 1970-01-01
        • 2012-12-26
        • 2010-10-31
        • 1970-01-01
        相关资源
        最近更新 更多