{{U|Array|informatica|maggio 2023|verso=a}}[[File:Jagged Array Representation.png|250px|thumbnail|right|Layout di memoria di uno jagged array]]
In [[informatica]], uno '''jagged array''' (che in [[lingua inglese|inglese]] significa "array seghettato") o '''ragged array''' ("array stracciato"), talvolta chiamato in italiano anche '''matrice irregolare''',<ref>{{cita web|url=https://docs.microsoft.com/it-it/dotnet/csharp/programming-guide/arrays/jagged-arrays|titolo=Matrici irregolari}}</ref> è una [[struttura dati]] multidimensionale costituita da un [[array]] di array. È così chiamato perché i singoli array contenuti nell'array esterno possono essere di differente dimensione,<ref name="LibertyMacDonald2008">{{citecita booklibro|author1autore1=Jesse Liberty|author2autore2=Brian MacDonald|titletitolo=Learning C# 3.0|url=http://books.google.com/books?id=CgLgh5vQcPgC&pg=PA210|datedata=18 Novembernovembre 2008|publishereditore="O'Reilly Media, Inc."|isbn=978-0-596-55420-0|pagesp=210–210}}</ref> schematizzabili con righe di differente lunghezza.
Mentre gli array multidimensionali in stile [[C (linguaggio)|C]] sono sempre rettangolari,<ref name="Box2002">{{citecita booklibro|authorautore=Don Box|titletitolo=Essential .Net: The Common Language Runtime|url=http://books.google.com/books?id=Kl1DVZ8wTqcC&pg=PA138|yearanno=2002|publishereditore=Addison-Wesley Professional|isbn=978-0-201-73411-9|pagesp=138}}</ref> in numerosi altri linguaggi gli array multidimensionali sono implementati tramite jagged array, ad esempio in [[Java (linguaggio di programmazione)|Java]], [[Python]] (liste multidimensionali), [[Ruby (linguaggio di programmazione)|Ruby]], [[Visual Basic]], [[Perl]], [[PHP]], [[JavascriptJavaScript]], [[Swift (linguaggio di programmazione)|Swift]].
== Esempi ==
In [[C_sharp|C#]]<ref name="DeitelDeitel2008">{{citecita booklibro|author1autore1=Paul J. Deitel|author2autore2=Harvey M. Deitel|titletitolo=C# 2008 for Programmers|url=http://books.google.com/books?id=sYzx_mZy0twC&pg=PA40|datedata=26 Septembersettembre 2008|publishereditore=Pearson Education|isbn=978-0-13-701188-9|pagesp=40}}</ref> o in [[Java (linguaggio di programmazione)|Java]]<ref>{{cita libro|titolo=Java for Artists|url=https://archive.org/details/javaforartistsar00rick|autore=Rick Miller|autore2=Raffi Kasparian|editore=Pulp Free Press|anno=2006|pp=[https://archive.org/details/javaforartistsar00rick/page/n746 194]-196|ISBN=978-1-9325-0405-7}}</ref> uno jagged array di interi che abbia due righe, la prima di cinque elementi e la seconda di tre, può essere creato con il seguente codice:
<syntaxhighlight lang=CSharp>
int[][] c; // dichiara un array bidimensionale di interi (array di array di int)
int[][] c;
c = new int[2][]; // createsistanzia 2un rowsarray di due array
c[0] = new int[5]; // 5istanzia columnsun forarray rowdi 0cinque interi nella prima posizione
c[1] = new int[3]; // createistanzia 3un columnsarray fordi rowtre 1interi nella seconda posizione