【问题标题】:separate the string and number from list in android将字符串和数字从android中的列表中分离出来
【发布时间】:2013-09-06 06:14:11
【问题描述】:

我想拆分 mProductType 是一个列表,mRetailerid 是另一个列表。我怎样才能得到它????

public class RetailerNames implements Serializable{


private String mProductType;
private String mRetailerid;

public String getmProductType() {
    return mProductType;
}

public void setmProductType(String mProductType) {
    this.mProductType = mProductType;
}

public String getmRetailerid() {
    return mRetailerid;
}

public void setmRetailerid(String mRetailerid) {
    this.mRetailerid = mRetailerid;
}
@Override
   public String toString() {
    return   mProductType + "," +
            mRetailerid ;  

}

我使用了以下代码:

    ArrayList<RetailerNames> retailerNamesList = (ArrayList<RetailerNames>) getIntent().getExtras().getSerializable("ProductsDetailsDescriptionPage");
    System.out.println("The retailer details are"+" "+retailerNamesList);

现在我当前的输出是:

零售商详细信息为 [Krish,48, Danesh,47]

但我想获得 一个像 [Krish,Danesh] 这样的列表。而 [48,47] 是另一个单独的列表。我该怎么做???

请给我解决办法???

请给我一个将数组列表拆分为单独列表的想法???

【问题讨论】:

  • 用你的正则表达式“,”使用字符串的拆分方法可能会有帮助。

标签: java android string arraylist split


【解决方案1】:
  ArrayList list = new ArrayList();

 Iterator<RetailerNames > retaileriterator = retailerNamesList.iterator();

while(retaileriterator.hasNext()){
 id=retaileriterator .next().getmRetailerid();
 System.out.println(id);
  list.add(id);
   }
 System.out.println(list);

【讨论】:

    【解决方案2】:
    In my condition getLocationDetails return arraylist
    and  LocationDetails is POJO same like your class RetailerNames 
    Iterator<LocationDetails> it= getUserLocationsWrapper.getLocationDetails().iterator();
    while(locationCitiDetailsItr.hasNext()){
    locationCitiDetailsItr.next().getCity());
    }
    same i think  try this one
    Iterator<RetailerNames > retaileriterator = retailerNamesList.iterator();
    while(retaileriterator.hasNext()){
    Object id=retaileriterator .next().getmRetailerid();
    //add this id into another list
    //same RetailerNames
    }
    

    【讨论】:

      【解决方案3】:

      这样使用

         public class RetailerNames implements Serializable{
      
      
          private String mProductType;
          private String mRetailerid;
      
          public String getmProductType() {
              return mProductType;
          }
      
          public void setmProductType(String mProductType) {
              this.mProductType = mProductType;
          }
      
          public String getmRetailerid() {
              return mRetailerid;
          }
      
          public void setmRetailerid(String mRetailerid) {
              this.mRetailerid = mRetailerid;
          }
          @Override
          public String toString() {
              return  + mProductType + ","
                      + mRetailerid +;  //Remove "[" this..
          }
      

      还有,

       ArrayList<RetailerNames> retailerNamesList = (ArrayList<RetailerNames>) getIntent().getExtras().getSerializable("ProductsDetailsDescriptionPage");
              System.out.println("The retailer details are"+" "+retailerNamesList);
      

      现在试试

      Object temp[]=retailerNamesList.toArray();
      String[] values=temp.toString().split(",");
      
      String names=values[0];
      String names=values[1];
      

      【讨论】:

      • 我没有测试过..如果有任何问题请告诉我。我以前也这样用过。
      • 字符串名称=值[1];这里的名称是重复的局部变量名称。我给了另一个变量名称,例如 String names1=values[1] 意味着我收到以下错误:09-04 14:10:30.311: E/AndroidRuntime(11720): Caused by: java.lang .ArrayIndexOutOfBoundsException:长度=1; index=1 请给我一个解决方案yaar ..
      • 在评论中保留 String names1=valueses[1],然后尝试查看 o/p String names=values[0] 的结果是什么
      • 这是我的代码:System.out.println("零售商详细信息是"+" "+retailerNamesList);对象 temp[]=retailerNamesList.toArray(); String[] values=temp.toString().split(","); System.out.println(值);字符串名称=值[0]; System.out.println(名称); ...现在得到如下输出:09-04 14:28:54.346: I/System.out(14061): 零售商详细信息是 [Krish,48, Danesh,47] 09-04 14:28:54.346: I/System.out(14061): [Ljava.lang.String;@41c01dd8 09-04 14:28:54.346: I/System.out(14061): [Ljava.lang.Object;@41b3cb50
      【解决方案4】:

      使用嵌套数组

      Put [Krish,48] 是一个列表并且 [damesh,47] 在另一个列表中,并将两个列表放在一个主数组列表中

      【讨论】:

      • 请给我一个解决方案yaar...我无法理解你的意思。所以请阅读我更新的问题并给我一个解决方案yaar。
      猜你喜欢
      • 1970-01-01
      • 2022-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-13
      • 1970-01-01
      相关资源
      最近更新 更多