Java 如何在android中获取两个字符串数组项的位置并存储在每个单独的字符串数组中

Java 如何在android中获取两个字符串数组项的位置并存储在每个单独的字符串数组中,java,arrays,Java,Arrays,对不起,我的英语不好。我为arraylist的每一项使用两个单独的字符串数组。一切正常。我的问题是,我想把字符串数组的每一项都取下来,比如说,如果我把字符串数组的另一项取下来,那么我想把字符串数组值的每一项都存储在第三个字符串数组中,比如:[id1,qty1],依此类推。请让我知道是否有一个适当的解决办法 下面是我的代码 提前谢谢 String [] asasaqty; String [] asasaId; final AddToCartData addToCartData =

对不起,我的英语不好。我为arraylist的每一项使用两个单独的字符串数组。一切正常。我的问题是,我想把字符串数组的每一项都取下来,比如说,如果我把字符串数组的另一项取下来,那么我想把字符串数组值的每一项都存储在第三个字符串数组中,比如:[id1,qty1],依此类推。请让我知道是否有一个适当的解决办法

下面是我的代码

提前谢谢

String [] asasaqty;
    String [] asasaId;

    final AddToCartData addToCartData = response.body();
                    shoppingBagArrayList = addToCartData.getData();

                    asasaqty = new String[shoppingBagArrayList.size()];
                    asasaId = new String[shoppingBagArrayList.size()];


                    for (int i = 0; i < shoppingBagArrayList.size(); i++) {


                        asasaqty[i] = shoppingBagArrayList.get(i).getQty();

                     asasaId[i]=shoppingBagArrayList.get(i).getProductId();


                    System.out.println("==========wwwww========"+ Arrays.toString(asasaqty));
                    System.out.println("======wwwwssssswwwwss======"+ Arrays.toString(asasaId));

                   /* HashMap<String,String> map=new HashMap<String,String>();
                    for (int i = 0; i < asasaqty.length; i++) {
                   map.put(asasaqty[i],asasaId[i]);
                        System.out.println("======aaaaaaa======"+ map.put(asasaqty[i],asasaId[i]));

                    }*/
现在,我想使用另一个字符串数组,将每个项目存储为AsAsaQuantity和asasaId,如下所示

String[] xyz = [3,151] and 
String[] abc = [2,10]

请让我知道我们如何做到这一点。

您可以使用productID和key,前提是它是唯一的,并且数量是值

 HashMap<Integer,Integer> dataMap = new HashMap<>();

    for (int i=0; i <shoppingBagArrayList.size; i++){
        dataMap.put(shoppingBagArrayList.get(i).getProductId() , shoppingBagArrayList.get(i).getQty());
    }

    System.out.println("DataMap: "+dataMap);

您希望将array1的第一项映射到array2的第一项,依此类推。。这是你想要的吗?然后使用hashmap。我使用它,但它会单独打印值。请参阅我的注释代码。为什么要将映射中的项目放在println中?只是为了检查值。你能告诉我如何在字符串数组中存储它吗?就像@Ravi said一样,使用一个HashMap,asasayd作为键,asasaaqty作为值。你不需要3个单独的字符串数组。他已经有了一个arraylist shoppingBagArrayList,其中包含值、数量和ID。你不需要创建额外的字符串数组。从arraylist获取并填充HashMapomg我是多么愚蠢,对不起你们两个,先生。一切正常,你已经说过我打印了错误的值。这让我很困惑。实际上这是我的第一个电子商务项目,我真的很紧张。谢谢你们。你节省了我很多时间。我投你们两个的票。
 HashMap<Integer,Integer> dataMap = new HashMap<>();

    for (int i=0; i <shoppingBagArrayList.size; i++){
        dataMap.put(shoppingBagArrayList.get(i).getProductId() , shoppingBagArrayList.get(i).getQty());
    }

    System.out.println("DataMap: "+dataMap);