0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

وقتی با استفاده از متد asList کلاس Arrays آرایه ای از نوع داده primitive را به List تبدیل می کنم بجای اینکه لیستی از آن نوع داده primitive درست شود، لیستی از آرایه درست می شود:

        int[] array = new int[] { 1, 2, 3 };

        List<int[]> list = Arrays.asList(array);

چرا؟ و چگونه می توان این مشکل را برطرف کرد؟

مربوط به این پاسخ: تبدیل آرایه به ArrayList در جاوا

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

بدلیل اینکه در جاوا نمی توانیم برای نوع داده generic از انواع داده primitive استفاده کنیم پس نمی توانیم لیستی از int داشته باشیم. برای این تبدیل می توانید از روش های زیر استفاده کنید:

- تبدیل نوع int به Integer در کد:

        Integer[] array = new Integer[] { 1, 2, 3 };

        List<Integer> list = Arrays.asList(array);

- استفاده از IntStream های جاوا 8

        int[] array = new int[]{1, 2, 3};
        List<Integer> list = Arrays.stream(array)
                .boxed().collect(Collectors.toList());

- استفاده از حلقه for

        int[] array = new int[]{1, 2, 3};
        List<Integer> list = new ArrayList<>();
        for (Integer item : array) {
            list.add(item);
        }

سوالات مشابه

0 امتیاز
1 پاسخ 718 بازدید
+1 امتیاز
2 پاسخ 620 بازدید
+1 امتیاز
1 پاسخ 445 بازدید
0 امتیاز
1 پاسخ 459 بازدید
0 امتیاز
1 پاسخ 592 بازدید
+1 امتیاز
1 پاسخ 432 بازدید
+1 امتیاز
1 پاسخ 1.4هزار بازدید
+1 امتیاز
1 پاسخ 1.8هزار بازدید
...