selamlar arkadaşlar,

Java'da diziler konusundayım iyice öğrenmek adına Alışveriş sepeti örneği yapmaya çalışıyorum methodları kullanarak fakat oluşturulan array listesine yeni eleman ekledikten sonra yeni listeyi gösteremiyorum
yardımcı olacak birisi varsa mutlu olurum

Ekle metodunda yeni bi array oluşturdum ve eski arrayi kopyalayıp yeni elemanı ekledim fakat gösteremiyorum method değer dönmüyor kafam karıştı işin içinden çıkamadım.

import java.util.*;


public class ListeOlusturma {
static Scanner veri=new Scanner (System.in);
	String MenuSecim;
	public ListeOlusturma () {
		
	 String [] sepet =new String [0];
	int kapasite=0;
	do {
		System.out.println("1- Alışveriş Listesi Oluştur");
		System.out.println("2- Alışveriş Listesi Göster");
		System.out.println("3- Listeye Ekle");
		System.out.println("4- Listeden Sil");
		System.out.println("5- Programdan Çıkış");
		
		   MenuSecim= veri.nextLine() ;
		
		switch (MenuSecim) {
		
		case "1":
			System.out.println("Liste Kapasitesini giriniz");   
			kapasite = Integer.parseInt(veri.nextLine());
			sepet =new String [kapasite];
			ListeOlustur(sepet, kapasite);
		break;
		case "2":
			ListeGoster(sepet, kapasite);
		break;
		case "3": 
			
			Ekle(sepet,kapasite);
	break;
		case "4":
			
			System.out.println("Listeden silme işlemi");break;
		}
}while (!MenuSecim.equals("5")); System.out.println("Programdan Çıkış yapıldı");
		 	
	}
	
	
	
	public static void ListeOlustur(String [] array, int limit) {
		 
			for ( int i=0; i<array.length;++i){
				 	 
			System.out.println(i+1+ ". Ürünü Giriniz:");
			array[i]=veri.nextLine();
	 		 
		
	}
			
			 
			
	
	}	
	public static void ListeGoster(String [] array,int limit) {
		System.out.println("Alışveriş Listeniz:");
		System.out.println();
		for ( int i=0; i<array.length;i++){
			
			System.out.println(array[i]);
		}
				
			}
	
	public static  String[] Ekle(String [] array, int limit ) {
		 String[] YeniSepet = new String[array.length + 1];
		 
		 
		System.out.println("Eklemek istediğiniz ürünü giriniz:");
		String yeni_urun= veri.nextLine();
		
		for(int i=0;i < array.length;i++){
            YeniSepet[i] = array[i];
		}
		YeniSepet[YeniSepet.length-1] = yeni_urun;
		 array = YeniSepet;
		 return YeniSepet;
	}
	
	
}