خوش آمديد!
06:18 يكشنبه 31 ارديبهشت ماه ، 1391
تبلیغات راست
پکیج آموزش جامع دوره مهندسی شبکه مایکروسافت MCSE
خبر خوان

خبر خوان

دسته بندی مقالات
وب
  مقالات HTML
  مقالات PHP
  مقالات ASP.NET
  مقالات CSS
  مقالات XML
  مقالات JavaScript
  مقالات CMS
  مقالات Dreamweaver
  مقالات ColdFusion
  مقالات IIS
  مقالات Apache
  مقالات AJAX
  مقالات Flex
  مقالات AIR
  مقالات Expression Web
  مقالات SEO
  مقالات عمومی وب
برنامه نویسی
  مقالات C / C++
  مقالات C#
  مقالات VB.NET
  مقالات VB6
  مقالات دلفی
  مقالات VbScript
  مقالات اکشن اسکریپت
  مقالات Python
  مقالات سیلور لایت
  مقالات عمومی برنامه نویسی
سخت افزار
  مقالات CPU
  مقالات RAM
  مقالات دیسک سخت
  مقالات MainBoard
  مقالات کیبورد
  مقالات کارت گرافیک
  مقالات چاپگر
  مقالات عمومی سخت افزار
سیستم عامل
  مقالات ویندوز سون
  مقالات ویندوز ویستا
  مقالات ویندوز XP
  مقالات لینوکس
  مقالات سیستم عامل مک
  مقالات عمومی سیستم عامل
گرافیک دو بعدی
  مقالات فتوشاپ
  مقالات Illustrator
  مقالات Corel
  مقالات Painter
  مقالات QuarkXpress
  مقالات InDesign
  مقالات Fireworks
  مقالات Lightroom
  مقالات Bridge
  مقالات آکروبات
  مقالات فلش
  مقالات Expression Medial
  مقالات Expression Blend
  مقالات عمومی گرافیک دو بعدی
گرافیک سه بعدی و انیمیشن سازی
  مقالات تردی مکس
  مقالات مایا
  مقالات اتوکد
  مقالات عمومی گرافیک سه بعدی
میکس و مونتاژ
  مقالات After Effects
  مقالات پرمیر
  مقالات ادیوس
  مقالات SoundBooth
  مقالات Apple Reason
  مقالات Corel Video Studio
  مقالات Audition
  مقالات Pro Tools
  مقالات FLStudio
  مقالات SoundFordge
  مقالات عمومی ویرایش صوت و فیلم
پایگاه داده
  مقالات SQL Server
  مقالات اکسس
  مقالات MySQL
  مقالات اراکل
  مقالات عمومی پایگاه داده
شبکه
  مقالات اکسچنج سرور
  مقالات SharePoint Server
  مقالات ویندوز سرور 2003
  مقالات ویندوز سرور 2008
  مقالات ISA Server
  مقالات VMware
  مقالات MS Virtualization
  مقالات MCSE
  مقالات MCITP
  مقالات CCNA
  مقالات CCNP
  مقالات CCIE
  مقالات مایکروسافت System Center
  مقالات Wireless
  مقالات Wi-Fi
  مقالات WiMax
  مقالات Citrix
  مقالات DSL
  مقالات BizTalk
  مقالات Commerce Server
  مقالات Forefront
  مقالات Groove
  مقالات Communication Server
  مقالات Project Server
  مقالات Storage Server
  مقالات امنیت شبکه
  مقالات VoIP
  مقالات عمومی شبکه
آفیس و برنامه های تجاری
  مقالات Word
  مقالات Excel
  مقالات Access
  مقالات PowerPoint
  مقالات Visio
  مقالات OneNote
  مقالات Publisher
  مقالات Outlook
  مقالات Amalga
  مقالات Dynamics AX
  مقالات Dynamics CRM
  مقالات Dynamics GP
  مقالات Dynamics NAV
  مقالات Dynamics POS
  مقالات Dynamics RMS
  مقالات Dynamics SL
  مقالات عمومی آفیس و برنامه های تجاری

آموزش ColdFusion - آشنایی با انواع آرایه ها

آموزش ColdFusion - آشنایی با انواع آرایه ها

آرايه ها نيز مانند ليست ها، براي ذخيره سازي مقادير متعدد، تحت يک نام مي باشند. اما، برخلاف ليست ها، اين ذخيره سازي در قسمت ها جدا از هم انجام مي گيرد و مانند ليست ها تمام مقادير در يک رشته اي از مقادير جدا شده به وسيله ي حرف جدا کننده ذخيره نمي گردند.

ليست ها داده هاي ساده مي باشند، چون فقط يک رشته مي باشند، در حالي که آرايه ها داده هاي پيچيده مي باشند، چون متشکل از چندين قسمت قابل آدرس دهي مي باشند و داراي چنيدن مقدار مختلف مي باشند.



ايجاد يک آرايه
برخلاف ليست، که يک رشته ساده مي باشد، آرايه ها نوع داده ي پيچيده اي مي باشند که توسط تابع ArrayNew() ايجاد مي گردند. مانند مثال زير : <cfset myArray = ArrayNew(1) >

تکه کد بالا، يک آرايه ي يک بعدي ايجاد مي کند و آن را به ArrayNew تخصيص مي دهد. يک آرايه مي تواند تا 3 بعد داشته باشد.

ارجاع به عضوي از يک آرايه
براي دسترسي به عضوي از آرايه، مانند مثال زير عمل مي کنيم :

<cfoutput>#MyArray[2]#</cfoutput>

مثال بالا مقدار عنصر دوم آرايه را چاپ مي کند. بر خلاف اکثر زبان هاي برنامه نويسي، انديس آرايه در کلدفيوژن از يک شروع مي شود.

افزودن عنصري به آرايه
براي افزودن عنصري به آرايه از ArrayAppend() به شکل زير استفاده مي کنيم :

<cfset myArray = ArrayNew(1)>
<cfset ArrayAppend(myArray,”apple”)>

به تفاوت ArrayAppend و ListAppend توجه کنيد :

<cfset myList = ListAppend(myList, “apple”)>
<cfset ArrayAppend(myArray,”apple”)>

ListAppend مقدار ليست اصلي را تغيير نمي دهد، بلکه يک ليست جديد با يک مقدار جديد افزوده شده به انتهاي آن ايجاد مي کند. اما ArrayAppend تغييرات را روي آرايه ي اصلي اعمال مي کند، و مقدار بازگشتي آن در صورت موفقيت تابع true مي باشد و در غير اين صورت false مي باشد. بنابراين شما حتي نياز نداريد که مقدار بازگشتي را ذخيره کنيد.

همچنين براي افزودن عنصري به ابتداي يک آرايه از تابع ArrayPrepend مانند مثال زير استفاده مي کنيم :

<cfset ArrayPrepend(myArray,”lemon”)>

شما همچنين مي توانيد عنصري را ميان عناصر موجود اضافه کنيد . مثلا فرض کنيد آرايه ي ما داراي عناصر زير باشد :

1 :  peach
2 :  apple

شما مي توانيد عنصري را ميان عناصر اول و دوم اضافه کنيد . بدين منظور از تابع ArrayInsertAt به صورت زير استفاده مي کنيم :

<cfset ArrayInsertAt(myArray,2,”lemon”)>

پس از اجراي کد بالا آرايه ي ما داراي عناصر زير خواهد بود :

1 : peach
2 : lemon
3 : apple

شما همچنين مي توانيد يک عنصر براي آرايه بوسيله عمل تخصيص ايجاد کنيد. مثلا، براي آرايه ي بالا، کد زير را اجرا مي کنيم :

<cfset myArray[4]=”blueberry”>

حال، آرايه ي ما داراي چهار عنصر زير مي باشد :

1 : peach
2 : lemon
3 : apple
4 : blueberry

شما همچنين مي توانيد از مقدار دهي به برخي از عناصر صرف نظر کنيد :

<cfset myArray[6]=”pomegranate”>

پس از اجراي کد بالا آرايه ما به صورت زير مي باشد :

1 : peach
2 : lemon
3 : apple
4 : blueberry
5 : هيچ عنصري با انديس پنج وجود ندارد
6 : pomegranate

به آرايه ي بالا توجه کنيد، هيچ عنصري با انديس 5 وجود ندارد و اين به اين معني نيست که آرايه ي پنجم داراي مقدار خالي مي باشد، فقط، هيچ عنصري با انديس 5 وجود ندارد.

حذف عنصري از يک آرايه
براي حذف عنصري از آرايه مي توانيد از تابع ArrayDeleteAt به صورت زير استفاده کنيد :

<cfset ArrayDeleteAt(myArray,2)>

تابع بالا عنصر دوم از آرايه را حذف مي کند.

براي پاک کردن کل آرايه ، يعني حذف تمام عناصر از تابع ArrayClear مانند زير استفاده مي کنيم :

<cfset ArrayClear(myArray)>

 

بدست آوردن اطلاعاتي در رابطه با آرايه :
براي تست کردن اينکه آيا هيچ عنصري در آرايه موجود مي باشد يا نه ، از تابع ArrayIsEmpty به صورت زير استفاده مي کنيم :

<cfif ArrayIsEmpty(myArray)>
            This Array is empty.
<cfelse>
            This Array has some elements.
</cfif>

براي بدست آوردن تعداد عناصر يک آرايه از تابع ArrayLen بصورت زير استفاده مي کنيم :

<cfset numElements = ArrayLen(myArray) >

ArrayLen عناصر تعريف نشده را نيز حساب مي کند.

 

پيدا کردن عنصري در آرايه :
براي پيدا کردن عناصر در يک ليست دو تابع ListFind و ListFindnocase وجود داشتند، ولي هيچ تابعي براي جستجو بر روي آرايه ها وجود ندارد. بنابراين، براي جستجو در يک آرايه، بايد از cfloop مانند مثال زير استفاده کرد :

<cfloop from=”1” to=”#ArrayLen(myArray)#” index=”I”>
            <cfif myArray[I] EQ “apple”>
                        <cfbreak>
            </cfif>
</cfloop>

پس از اجراي کد بالا، I داراي انديس عنصر داراي مقدار apple مي باشد.

برخي توابع رياضي براي آرايه ها :
تابع ArrayMin براي پيدا کردن کمترين مقدار موجود در آرايه به کار مي رود.
تابع ArrayMax براي پيدا کردن بيشترين مقدار موجود در آرايه به کار مي رود.
تابع ArraySum براي پيدا کردن مجموع مقادير موجود در آرايه به کار مي رود.
تابع ArrayAvg براي پيدا کردن ميانگين مقادير موجود در آرايه به کار مي رود.

به عنوان مثال، به تکه کد زير توجه کنيد :

<cfset NumericArray=ArrayNew(1)>
<cfset NumericArray[1]=10>
<cfset NumericArray[2]=12>
<cfset NumericArray[3]=11>
<cfset NumericArray[4]=20>
<cfset NumericArray[5]=10>

<cfset Minimum=ArrayMin(NumericArray)>
<cfset Maximum=ArrayMax(NumericArray)>
<cfset Sum=ArraySum(NumericArray)>
<cfset Avg=ArraySum(NumericArray)>

 

تعويض جاي عناصر يک آرايه :
فرض کنيد عناصر آرايه ي ما به صورت زير باشند :

1 : peach
2 : lemon
3 : apple
4 : blueberry

براي تعويض جاي عنصر اول و عنصر سوم ، از تابع ArraySwap به صورت زير استفاده مي کنيم :

<cfset ArraySwap(myArray,1,3)>

حال عناصر آرايه ي ما به صورت زير مي باشند :

1 : apple
2 : lemon
3 : peach
4 : blueberry

 

مرتب سازي عناصر يک آرايه :
همانند ليست ها، شما مي توانيد عناصر يک آرايه را به راحتي مرتب کنيد :

<cfset ArraySort(myArray,”text”,”asc”>

پس از اينکه کد بالا اجرا شد، آرايه داراي عناصر به ترتيب زير مي باشد :

1 : apple
2 : blueberry
3 : lemon
4 : peach

اگر عنصر تعريف نشده اي در آرايه موجود باشد، و شما بخواهيد آرايه را مرتب کنيد، کلدفيوژن يک خطا ايجاد مي کند.

همانند براي ListSort() ، دومين پارامتر تابع ArraySort ، نوع مرتب سازي که مي خواهيد انجام دهيد را مشخص مي کند :

Numeric : آرايه را به صورت عددي مرتب سازي مي کند. اگر عنصري از آرايه نتواند به يک عدد تبديل شود، يک خطا رخ مي دهد.
 Text : آرايه را به صورت الفبايي مرتب سازي مي کند، و حساس به بزرگي و کوچکي حروف مي باشد.
 Textnocase : آرايه را به صورت الفبايي مرتب سازي مي کند، و حساس به بزرگي و کوچکي حروف نمي باشد.

سومين پارامتر تابع ArraySort() مي تواند “asc ” و يا “desc " باشد. بستگي دارد به اينکه شما مي خواهيد آرايه را به صورت از کوچک به بزرگ مرتب کنيد و يا از بزرگ به کوچک مرتب کنيد.

 

تغيير اندازه ي يک آرايه :
هر وقت که شما يک عنصر را به آرايه اضافه مي کنيد، مقداري حافظه از سرور کلدفيوژن براي آن عنصر تخصيص مي دهيد. اگر مقدار حافظه ي کافي در محل جاري آرايه موجود نباشد، کلدفيوژن مجبور است که تمام آرايه را يک جا به محل حافظه ي ديگري انتقال دهد. اگر تعداد زيادي عنصر در آرايه موجود باشد، اين عمليات از CPU و حافظه بيهوده استفاده مي کند.

به خاطر بهنيه سازي، اگر تعداد عناصر يک آرايه را از اول مي دانيد، مي توانيد قبل از شروع به افزودن عناصر به آرايه بوسيله ي تابع ArrayResize حافظه مورد نياز را از قبل اختصاص دهيد. مانند مثال زير :

<cfset ArrayResize(myArray, 500)>

براي بدست آوردن حداکثر بهينه سازي، از تابع ArrayResize بلافاصله بعد از استفاده از ArrayNew استفاده کنيد.

 

تبديل بين آرايه ها و ليست ها 
براي تبديل يک آرايه ي موجود به يک ليست جديد، از تابع ArrayToList به صورت زير استفاده مي کنيم :

<cfset NewList = ArrayToList(myArray)>

براي تبديل يک ليست موجود به يک آرايه ي جديد، از تابع ListToArray به صورت زير استفاده مي کنيم :

<cfset NewArray = ListToArray(myList)>



ارسال شده در مورخه : شنبه، 16 آبان ماه ، 1388   چاپ مطلب

آموزش Exchange


مرتبط با موضوع :

 سرویس های وب فعال کننده برنامه Cold Fusion  [سه شنبه، 14 ارديبهشت ماه ، 1389]
 آموزش مقدماتی ColdFusion  [شنبه، 16 آبان ماه ، 1388]
 آموزش کلد فیوژن - آشنایی با انواع ليست ها  [شنبه، 16 آبان ماه ، 1388]
 آموزش ColdFusion ، ساختار Switch/Case  [شنبه، 16 آبان ماه ، 1388]
 دستورهای شرطی در ColdFusion  [شنبه، 16 آبان ماه ، 1388]
 آموزش کلد فیوژن : متغیر های Client و Session  [شنبه، 16 آبان ماه ، 1388]
 کار با پایگاه داده ها در کلدفیوژن  [شنبه، 16 آبان ماه ، 1388]
 مقایسه ColdFusion و ASP  [جمعه، 15 آبان ماه ، 1388]
 بررسی امکانات کلد فیوژن 8  [جمعه، 15 آبان ماه ، 1388]


تبلیغات چپ
پکیج Windows Server 2008 MCITP Enterprise Administ
آخرین مقالات
· لپ تاپ های Samsung Series 7 Game 3D
· پرطرفدارترین موبایل های هوشمند تا بهار ۲۰۱۲
· Sony Unveila Xperia Sola و صفحه نمایش شناور
· کنترل دستگاه اندرویدی توسط دسکتاپ
· 10 تبلت برتر بهار سال 2012
· Optimus 3D Max دومین گوشی سه بعدی ال جی به عنوان محصولی بی همتا
· G6-1160EE لپ تاپ باقابلیت و پرمخاطب HP
· راه های افزایش امنیت در اینترنت
· آموزش مراحل پاک کردن آرشیو یاهو مسنجر
· مانیتورهایی مخصوص بازی های ویدئویی و گیمرها
· نکات مهم در مورد سرچ گوگل
· معرفی بهترین تبلت های بازار از نظر کیفیت نمایشگر
· معرفی رایانه ها و تبلت های سازگار با ویندوز ۸
· ویژگی های Galaxy note 10.1 شرکت سامسونگ
· مهمترین دلایل خرابی سریع لپ تاپ ها
· معرفی ۶ لپ تاپ برتر مخصوص گیمرهای حرفه ای
· نصب مجدد ویندوز ۸ با یک کلیک ساده توسط مایکروسافت!
· وای-گیگ چیست؟
· هر آنچه باید در مورد اولترابوک ها بدانیم
· معرفی Google Cloud Print و آموزش راه اندازی این سرویس
· بررسی تلفن هوشمند HTC One X
· فوجیتسو اولین سری از اولترابوک های خود را معرفی کرد
· هر آنچه که لازم است از Galaxy S III سامسونگ بدانید
· راهنمای گام به گام اشتراک گذاری فایل های بزرگ در SkyDrive
· 15 روش برای سرعت بخشیدن به کندترین بخش کامپیوتر

[ موارد بیشتر در بخش اخبار و تازه ها ]
پربیننده ترین مقالات
· استاندارد های ISO/IEC 17799 و BS7799-2
· توصیه های مهم امنیتی در مورد لینوکس و یونیکس
· گرما در cpuها
· معماری client/Server در اینترنت
· آشنایی با سیستم فایل GNU/Linux
· یک MAC BOOK PRO جدید در بازار ایران
· معرفی دو مدل لپ تاپ با قابلیت سونی سری F
· F137HG/B، لپ تاپ سایز بزرگ سونی در بازار داخلی
· اندر احوالات کرک و کپی رایت
· EE31FX/BJ، لپ تاپ ارزان قیمت سونی در بازار داخلی
· معرفی z216 FX/L از لپ تاپ های سونی
· مدل MD313LL/A ، Macbook ارزان قیمت در بازار داخل
· تاریخچه کامپیوتر
· مشاهده آنلاین سوابق بیمه شدگان
· چگونگی اختصاص دادن یک آدرس IP استاتیک به یک رایانه در شبکه در ویندوز Xp ، Vista یا Seven
· آشنایی با روتر و سوئیچ(router and switch)
· تاریخچه ی پیدایش زبان های برنامه نویسی شی گرا
· الگوریتم های مرتب سازی آرایه ها
· GPS چیست؟
· به روز رسانی ویندوز 7 با نرم افزار Windows Update
· پایگاه داده های سیار Mobile database
· بازیابی رمز عبور در ویندوز 7
· معماری سرویس گرا Service Oriented Architecture چیست؟
· انتقال اطلاعات با Replication در SQL Server
· آموزش نرم افزار Virtual Box

[ موارد بیشتر در بخش اخبار و تازه ها ]
مقالات تصادفی
· نخستین تصاویر منتشر شده از دوربین A77 سونی
· راهنمای کاربردی حصول امنیت در فضای آنلاین
· آشنایی با یک ویروس ایرانی
· راهنمای تصویری و گام به گام نصب ویندوز ویستا
· آنالیز عوامل کندی بالا آمدن وب سایت ها
· هشدار مایکروسافت برای کاربران ویندوز ۷ ، ویژگی امنیتی UAC را در ویندوز خود فعال سازی
· هشدار به کاربران مرورگر "کروم"
· JavaScript چيست؟
· Business خودرا آنلاین کنید
· چگونه اینترنت سیاره ما را نابود می کند
· تاثیر طراحی سایت بر رتبه آن در موتورهای جستجوگر
· صفحه آبی مرگ Death of Screen Blue
· بررسی غول موتورولا Droid RAZR
· Xbox720، حقیقت یا دروغ؟!
· اساس نامه امنیتی برای مسیریاب ها
· Google Chrome، هر چه ساده تر بهتر
· برترین های فناوری ایران انتخاب شدند
· بالا بردن امنيت در ياهو
· کلاهبرداری 2.7 میلیون دلاری از سه سایت مشهور
· لینوکس سحر آمیز ، Mandrake Linux 10.1
· هفت مساله مهم در انتخاب نوع تجارت الکترونیک
· کاهش قیمت تبلت Dell Streak 7
· تاریخچه اینترنت
· انواع زبان های برنامه نویسی
· ویندوز فون های آینده نوکیا، با پردازنده های دو هسته ای ST- Ericsson می آیند

[ موارد بیشتر در بخش اخبار و تازه ها ]
امتیاز دهی به مطلب
امتیاز متوسط : 1
تعداد آراء: 1


لطفا رای مورد نظرتان را در مورد این مطلب ارائه نمائید :

عالی
خیلی خوب
خوب
متوسط
بد

نصب و پیکربندی Microsoft SharePoint Server 2010