Heim  >  Artikel  >  Java  >  Fallfreigabe des Java-Array-Erweiterungscodes

Fallfreigabe des Java-Array-Erweiterungscodes

黄舟
黄舟Original
2017-09-28 10:16:311776Durchsuche

In diesem Artikel wird hauptsächlich die Erweiterung von Java-Arrays vorgestellt. Der Implementierungscode ist sehr einfach und hat einen bestimmten Referenzwert.

Beim Schreiben von Programmen stoßen wir häufig auf Situationen, in denen der Array-Speicherplatz nicht ausreicht. Ich habe beispielsweise ein Array int []a = {1,2,3,4,5,6] initialisiert ,7 ,8,9,10} ;Zu diesem Zeitpunkt möchte ich ein Element am Index 3 in das Array einfügen. Was soll ich tun? Es ist zu schwierig, die Memcpy-Funktion einzeln aufzurufen, aber in Java muss es nicht so mühsam sein. Es gibt eine Möglichkeit, die Kapazität eines Arrays zu erweitern umgesetzt. Werfen wir einen Blick auf den Code:


public class HelloWorld {
	public static void main(String[] args){
	//	Scanner s = new Scanner(System.in);
	//	System.out.println("请输入一个数字");
	//	int num = s.nextInt();
		//这个数组下标只能到9
		int []a = {1,2,3,4,5,6,7,8,9,10};
		//先扩容
		int []b = Getarray(a,3,100);
		Demoe.PrintArray(b);
	}
	//案例:有一个数组已经初始化完毕,现向其下标3插入一个元素100
	public static int[] Getarray(int []a , int index , int num){
		int src_array_length = a.length ; 
		int []b = new int[src_array_length+1] ;
		for(int i = 0 ; i < a.length ; i++){
			b[i] = a[i] ; 
		}
		a = b ; //如果还想使用a,使得a指向b
		//接下来从最后一个元素开始,将最后一个元素的前面一个元素拷贝到最后一个
		//以此类推
		for(int i = a.length - 1 ; i > index ; i--){
			a[i] = a[i-1];
		}
		//别忘了,将要插入的元素插入到对应的数组坐标
		a[index] = num ;
		return a ;
	}
}

Sie können auch Bibliotheksfunktionen in Java verwenden, um


Das obige ist der detaillierte Inhalt vonFallfreigabe des Java-Array-Erweiterungscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn