+2 امتیاز
قبل در برنامه نویسی توسط (89 امتیاز)
ویرایش شده قبل توسط
اگر بخوام لیست اسم را n تا n تا چاپ کنم چطور از کلاس ArrayList یا کلاس دیگری می توانم استفاده کنم؟

ممنون از همکاری دوستان

2 پاسخ

+1 امتیاز
قبل توسط (922 امتیاز)

می توانید از متد subList کلاس ArrayList استفاده کنید:

    List<Integer> numbers = new ArrayList<Integer>(
        Arrays.asList(5,3,1,2,9,5,0,7)
    );
    List<Integer> head = numbers.subList(0, 4);
    List<Integer> tail = numbers.subList(4, 8);
0 امتیاز
قبل توسط (1.1هزار امتیاز)

کلاس ArrayList متد splite ندارد می توانید بصورت زیر آن را پیاده سازی کنید و استفاده کنید:

    public static void main(String[] args) {
	List<String> nameList = Collections.unmodifiableList(Arrays.asList(
		"Saeed", "Ali", "Ahmad", "Arash", "Reza"));
	List<List<String>> parts = splite(nameList, 2);

	for (List<String> list : parts) {
	    
	    for (String string : list) {
		System.out.println(string);
	    }
	    
	    System.out.println("---");
	}
    }

    public static <T> List<List<T>> splite(List<T> list, int L) {
	List<List<T>> parts = new ArrayList<List<T>>();
	final int N = list.size();
	for (int i = 0; i < N; i += L) {
	    parts.add(new ArrayList<T>(list.subList(i, Math.min(N, i + L))));
	}
	return parts;
    }

سوالات مشابه

+2 امتیاز
1 پاسخ 769 بازدید
سوال شده 10 سال قبل در برنامه نویسی توسط Milad (1.3هزار امتیاز)
0 امتیاز
1 پاسخ 406 بازدید
سوال شده 6 سال قبل در برنامه نویسی توسط Saeed Zarinfam (1.1هزار امتیاز)
0 امتیاز
0 پاسخ 333 بازدید
+1 امتیاز
1 پاسخ 504 بازدید
0 امتیاز
1 پاسخ 1.1هزار بازدید
+1 امتیاز
2 پاسخ 1.6هزار بازدید
+1 امتیاز
1 پاسخ 502 بازدید
+1 امتیاز
1 پاسخ 1.4هزار بازدید
+2 امتیاز
2 پاسخ 791 بازدید
+1 امتیاز
1 پاسخ 1.8هزار بازدید
...