<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب  - دورة تعلم java]]></title>
		<link>https://vb4arb.com/vb/</link>
		<description><![CDATA[منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب  - https://vb4arb.com/vb]]></description>
		<pubDate>Wed, 22 Apr 2026 18:23:22 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[سلسلة دروس التعامل مع android]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6534</link>
			<pubDate>Fri, 19 Oct 2012 09:21:26 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6534</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b">هنا علي هذا الرابط بعض دروس التعامل مع برمجيات نظام اندرويد باستخدام محرر eclipse ...</span><br />
<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350638465.rar" target="_blank" rel="noopener" class="mycode_url">اندرويد.rar</a>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b">هنا علي هذا الرابط بعض دروس التعامل مع برمجيات نظام اندرويد باستخدام محرر eclipse ...</span><br />
<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350638465.rar" target="_blank" rel="noopener" class="mycode_url">اندرويد.rar</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Continue - Break مع امثلة متقدمة ..(7)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6533</link>
			<pubDate>Fri, 19 Oct 2012 09:19:55 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6533</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">لغة الجافا تدعم ثلاثة انواع من حالات التفرع الا وهم</span></span> :<br />
<br />
1<span style="font-weight: bold;" class="mycode_b">_ Break و تستخدم لكسر او الخروج من حلقة ما ..<br />
2_ Continue و تستخدم للقفز من علي قيمة معينة بالحلقة .. اي استبعاد قيمة معينة من الحلقة ..<br />
3_ الحالة Return ..</span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">اولا</span> : الحالة Break</span></span> ..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int n[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]10[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&gt;[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]"" [/color][color=#007700]+ [/color][color=#0000bb]n[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]n[/color][color=#007700]==[/color][color=#0000bb]3[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث يتم كسر الحلقة عند القيمة 3 و لا يتم عرض باقي الحلقة</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال</span> متقدم يشمل array , loop , if , break</span></span>..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]private [/color][color=#0000bb]void breakmethode[/color][COLOR=#007700]()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int [/color][color=#007700][][] [/color][color=#0000bb]arrayOfInts [/color][color=#007700]= {{[/color][color=#0000bb]32[/color][color=#007700],[/color][color=#0000bb]87[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700],[/color][color=#0000bb]58[/color][color=#007700]},{[/color][color=#0000bb]12[/color][color=#007700],[/color][color=#0000bb]1076[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]8[/color][color=#007700]},{[/color][color=#0000bb]622[/color][color=#007700],[/color][color=#0000bb]127[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]955[/color][COLOR=#007700]}};<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int searchFor [/color][color=#007700]=[/color][color=#0000bb]12[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int i[/color][color=#007700],[/color][color=#0000bb]j [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]boolean foundIt[/color][color=#007700]=[/color][color=#0000bb]false[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]search[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ( [/COLOR][color=#0000bb]i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700].[/color][color=#0000bb]length [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for([/COLOR][color=#0000bb]j[/color][color=#007700]=[/color][color=#0000bb]0 [/color][color=#007700];[/color][color=#0000bb]j[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]].[/color][color=#0000bb]length[/color][color=#007700];[/color][color=#0000bb]j[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]][[/color][color=#0000bb]j[/color][color=#007700]] == [/color][color=#0000bb]searchFor[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]foundIt[/color][color=#007700]=[/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break [/COLOR][color=#0000bb]search[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]foundIt[/color][COLOR=#007700]){<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"found" [/color][color=#007700]+ [/color][color=#0000bb]searchFor [/color][color=#007700]+ [/color][color=#dd0000]"at" [/color][color=#007700]+ [/color][color=#0000bb]i [/color][color=#007700]+[/color][color=#dd0000]","[/color][color=#007700]+ [/color][color=#0000bb]j[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">تستخدم الدالة لكسر عملية البحث عن رقم في مصفوفة arrayOfInts ..<br />
يعني اذا وجدت الرقم 12 اخرج من الحلقتين</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">المثال الناتج</span></span> ...<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350638238.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350638238.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">رابط تحميل المثال</span></span> :<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350638366.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350638366.rar</a><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ثانيا</span> : الحالة Continue</span></span> ..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int n[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]10[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&gt;[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]n[/color][color=#007700]==[/color][color=#0000bb]5[/color][COLOR=#007700]){continue; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]"" [/color][color=#007700]+ [/color][color=#0000bb]n[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث تم تجاهل العدد 5 من الحلقة و تم اكمال الحقة بشكل طبيعي</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال</span> متقدم</span></span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] StringBuffer SearchMe [/color][color=#007700]= new [/color][color=#0000bb]StringBuffer[/color][color=#007700]([/color][color=#dd0000]"peter piper picked a peck of picked peppers"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int max[/color][color=#007700]=[/color][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int numPS [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ([/COLOR][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]max[/color][color=#007700];[/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][COLOR=#ff8000]//يتم التركيز في عملية التفنيط عن كل من الحرفين P , S<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#007700]if([/color][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700])!=[/color][color=#dd0000]'p'[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]numPS[/color][COLOR=#007700]++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]setCharAt[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700], [/color][color=#dd0000]'p'[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]" Found " [/color][color=#007700]+ [/color][color=#0000bb]numPS [/color][color=#007700]+ [/color][color=#dd0000]"P , S in the string .."[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label2[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]SearchMe[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">يقوم هذا الكود بالبحث عن الحرفين <span style="color: red;" class="mycode_color">P , S</span> في متغير نصي و هو <span style="color: red;" class="mycode_color">SearchMe</span> </span>..<br />
<br />
<img src="https://vb4arb.com/vb/uploaded/18_11350638238.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350638238.jpg]" class="mycode_img" /><br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">مثال آخر</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]String searchMe [/color][color=#007700]= [/color][color=#dd0000]"Look for a substring in me"[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]String substring [/color][color=#007700]= [/color][color=#dd0000]"sub"[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]boolean foundIt [/color][color=#007700]= [/color][color=#0000bb]false[/color][COLOR=#007700];<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int max [/color][color=#007700]= [/color][color=#0000bb]searchMe[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]() - [/color][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]test[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i [/color][color=#007700]&lt;= [/color][color=#0000bb]max[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int n [/color][color=#007700]= [/color][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int j [/color][color=#007700]= [/color][color=#0000bb]i[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int k [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while ([/COLOR][color=#0000bb]n[/color][color=#007700]-- != [/color][color=#0000bb]0[/color][COLOR=#007700]) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]searchMe[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]j[/color][COLOR=#007700]++)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;!= [/COLOR][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]k[/color][COLOR=#007700]++)) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;continue [/COLOR][color=#0000bb]test[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]foundIt [/color][color=#007700]= [/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break [/COLOR][color=#0000bb]test[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#0000bb]foundIt [/color][color=#007700]? [/color][color=#dd0000]"Found it" [/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#dd0000]"Didn't find it"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">رابط تحميل المثال</span></span> :<br />
<a href="https://vb4arb.com/vb/uploaded/18_11350638366.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_11350638366.rar</a><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ثالثا</span> : الحالة Return</span></span> ..<br />
<span style="font-weight: bold;" class="mycode_b">و تستخدم في حالتين اما ارجاع قيمة لدالة او عدم ارجاع اي قيمة ...<br />
</span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]return ++[/color][color=#0000bb]count[/color][COLOR=#007700];&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=#000000][COLOR=#007700]return;&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="color: purple;" class="mycode_color">و السلام عليكم ورحمة الله</span> ..</span><br />
</div>
<br />
<br />
<br />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<br />
</div>
</div>
<br />
<br />
<br />
</div>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">لغة الجافا تدعم ثلاثة انواع من حالات التفرع الا وهم</span></span> :<br />
<br />
1<span style="font-weight: bold;" class="mycode_b">_ Break و تستخدم لكسر او الخروج من حلقة ما ..<br />
2_ Continue و تستخدم للقفز من علي قيمة معينة بالحلقة .. اي استبعاد قيمة معينة من الحلقة ..<br />
3_ الحالة Return ..</span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">اولا</span> : الحالة Break</span></span> ..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int n[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]10[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&gt;[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]"" [/color][color=#007700]+ [/color][color=#0000bb]n[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]n[/color][color=#007700]==[/color][color=#0000bb]3[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث يتم كسر الحلقة عند القيمة 3 و لا يتم عرض باقي الحلقة</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال</span> متقدم يشمل array , loop , if , break</span></span>..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]private [/color][color=#0000bb]void breakmethode[/color][COLOR=#007700]()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int [/color][color=#007700][][] [/color][color=#0000bb]arrayOfInts [/color][color=#007700]= {{[/color][color=#0000bb]32[/color][color=#007700],[/color][color=#0000bb]87[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700],[/color][color=#0000bb]58[/color][color=#007700]},{[/color][color=#0000bb]12[/color][color=#007700],[/color][color=#0000bb]1076[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]8[/color][color=#007700]},{[/color][color=#0000bb]622[/color][color=#007700],[/color][color=#0000bb]127[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]955[/color][COLOR=#007700]}};<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int searchFor [/color][color=#007700]=[/color][color=#0000bb]12[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int i[/color][color=#007700],[/color][color=#0000bb]j [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]boolean foundIt[/color][color=#007700]=[/color][color=#0000bb]false[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]search[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ( [/COLOR][color=#0000bb]i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700].[/color][color=#0000bb]length [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for([/COLOR][color=#0000bb]j[/color][color=#007700]=[/color][color=#0000bb]0 [/color][color=#007700];[/color][color=#0000bb]j[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]].[/color][color=#0000bb]length[/color][color=#007700];[/color][color=#0000bb]j[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]][[/color][color=#0000bb]j[/color][color=#007700]] == [/color][color=#0000bb]searchFor[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]foundIt[/color][color=#007700]=[/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break [/COLOR][color=#0000bb]search[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]foundIt[/color][COLOR=#007700]){<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"found" [/color][color=#007700]+ [/color][color=#0000bb]searchFor [/color][color=#007700]+ [/color][color=#dd0000]"at" [/color][color=#007700]+ [/color][color=#0000bb]i [/color][color=#007700]+[/color][color=#dd0000]","[/color][color=#007700]+ [/color][color=#0000bb]j[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">تستخدم الدالة لكسر عملية البحث عن رقم في مصفوفة arrayOfInts ..<br />
يعني اذا وجدت الرقم 12 اخرج من الحلقتين</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">المثال الناتج</span></span> ...<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350638238.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350638238.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">رابط تحميل المثال</span></span> :<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350638366.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350638366.rar</a><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ثانيا</span> : الحالة Continue</span></span> ..<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int n[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]10[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&gt;[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]n[/color][color=#007700]==[/color][color=#0000bb]5[/color][COLOR=#007700]){continue; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]"" [/color][color=#007700]+ [/color][color=#0000bb]n[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث تم تجاهل العدد 5 من الحلقة و تم اكمال الحقة بشكل طبيعي</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال</span> متقدم</span></span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] StringBuffer SearchMe [/color][color=#007700]= new [/color][color=#0000bb]StringBuffer[/color][color=#007700]([/color][color=#dd0000]"peter piper picked a peck of picked peppers"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int max[/color][color=#007700]=[/color][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int numPS [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ([/COLOR][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]max[/color][color=#007700];[/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][COLOR=#ff8000]//يتم التركيز في عملية التفنيط عن كل من الحرفين P , S<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#007700]if([/color][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700])!=[/color][color=#dd0000]'p'[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; continue;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]numPS[/color][COLOR=#007700]++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]SearchMe[/color][color=#007700].[/color][color=#0000bb]setCharAt[/color][color=#007700]([/color][color=#0000bb]i[/color][color=#007700], [/color][color=#dd0000]'p'[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]" Found " [/color][color=#007700]+ [/color][color=#0000bb]numPS [/color][color=#007700]+ [/color][color=#dd0000]"P , S in the string .."[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label2[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]SearchMe[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">يقوم هذا الكود بالبحث عن الحرفين <span style="color: red;" class="mycode_color">P , S</span> في متغير نصي و هو <span style="color: red;" class="mycode_color">SearchMe</span> </span>..<br />
<br />
<img src="https://vb4arb.com/vb/uploaded/18_11350638238.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350638238.jpg]" class="mycode_img" /><br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">مثال آخر</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]String searchMe [/color][color=#007700]= [/color][color=#dd0000]"Look for a substring in me"[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]String substring [/color][color=#007700]= [/color][color=#dd0000]"sub"[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]boolean foundIt [/color][color=#007700]= [/color][color=#0000bb]false[/color][COLOR=#007700];<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int max [/color][color=#007700]= [/color][color=#0000bb]searchMe[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]() - [/color][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]test[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for ([/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i [/color][color=#007700]&lt;= [/color][color=#0000bb]max[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int n [/color][color=#007700]= [/color][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]length[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int j [/color][color=#007700]= [/color][color=#0000bb]i[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int k [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while ([/COLOR][color=#0000bb]n[/color][color=#007700]-- != [/color][color=#0000bb]0[/color][COLOR=#007700]) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]searchMe[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]j[/color][COLOR=#007700]++)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;!= [/COLOR][color=#0000bb]substring[/color][color=#007700].[/color][color=#0000bb]charAt[/color][color=#007700]([/color][color=#0000bb]k[/color][COLOR=#007700]++)) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;continue [/COLOR][color=#0000bb]test[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]foundIt [/color][color=#007700]= [/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; break [/COLOR][color=#0000bb]test[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]label1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#0000bb]foundIt [/color][color=#007700]? [/color][color=#dd0000]"Found it" [/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#dd0000]"Didn't find it"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">رابط تحميل المثال</span></span> :<br />
<a href="https://vb4arb.com/vb/uploaded/18_11350638366.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_11350638366.rar</a><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ثالثا</span> : الحالة Return</span></span> ..<br />
<span style="font-weight: bold;" class="mycode_b">و تستخدم في حالتين اما ارجاع قيمة لدالة او عدم ارجاع اي قيمة ...<br />
</span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]return ++[/color][color=#0000bb]count[/color][COLOR=#007700];&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=#000000][COLOR=#007700]return;&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="color: purple;" class="mycode_color">و السلام عليكم ورحمة الله</span> ..</span><br />
</div>
<br />
<br />
<br />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<br />
</div>
</div>
<br />
<br />
<br />
</div>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[المصفوفات و انواعها في الجافا ..(5)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6532</link>
			<pubDate>Fri, 19 Oct 2012 09:12:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6532</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ما هي المصفوفات arrays ؟</span> </span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">المصفوفات هي عبارة عن نوع متقدم من ابنية البيانات كالدوال و ال classes تسمح للمبرمج بان يحجز مكان لمجموعة من كبيرة من المتغيرات في الذاكرة دفعة واحدة و تكون هذه المتغيرات من نوع واحد اما اعداد صحيحة او اعداد عشرية او نصوص ..الخ ..</span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">وتنقسم المصفوفات الي نوعين </span></span></span>:<br />
1_المصفوفات احادية البعد .. Single Array<br />
2_المصفوفات متعددة الابعاد .. Multi-Dimensional Array<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">اولا</span></span></span> : <span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">المصفوفات احادية البعد .. :</span></span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مثال علي تهيئة مصفوفة احادية البعد لاستخدامها</span>:</span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700][] [/color][color=#0000bb]myarray [/color][color=#007700]={[/color][color=#0000bb]1[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]3[/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]10[/color][color=#007700], [/color][color=#0000bb]20[/color][color=#007700], [/color][color=#0000bb]30[/color][color=#007700], [/color][color=#0000bb]40[/color][color=#007700], [/color][color=#0000bb]50[/color][color=#007700], [/color][color=#0000bb]60[/color][color=#007700], [/color][color=#0000bb]70[/color][color=#007700], [/color][color=#0000bb]80[/color][color=#007700], [/color][color=#0000bb]90[/color][color=#007700], [/color][color=#0000bb]100 [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">طريقة حجز قيمة المصفوفة احادية البعد في الذاكرة </span>:</span></div>
<br />
<img src="https://vb4arb.com/vb/uploaded/18_01350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مصفوفات لمتغيرات اخري غير العددية مثل الحروف و القيم المنطقية</span>:</span><br />
<br />
<span style="color: red;" class="mycode_color">مصفوفة للقيم المنطقية <span style="color: blue;" class="mycode_color">boolean</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]boolean results[/color][color=#007700][] = { [/color][color=#0000bb]true[/color][color=#007700], [/color][color=#0000bb]false[/color][color=#007700], [/color][color=#0000bb]true[/color][color=#007700], [/color][color=#0000bb]false [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color">مصفوفة لايام الاسبوع اي قيم <span style="color: blue;" class="mycode_color">string</span></span> :<br />
</div>
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]String days[/color][color=#007700][] = { [/color][color=#0000bb]“Mon”[/color][color=#007700], [/color][color=#0000bb]“Tue”[/color][color=#007700], [/color][color=#0000bb]“Wed”[/color][color=#007700], [/color][color=#0000bb]“Thu”[/color][color=#007700], [/color][color=#0000bb]“Fri”[/color][color=#007700], [/color][color=#0000bb]“Sat”[/color][COLOR=#007700],<br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]“Sun”[/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">كانت هذه مجموعة امثلة علي الشكل المبسط للمصفوفات احادية البعد سواء ان كانت مصفوفة عددية او منطقية او حرفية ...وغيره...<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال</span> : برنامج يقوم بعمل استدعاء لكافة عناصر مصفوفة احادية .. و يضع عناصرها في اداة <span style="color: blue;" class="mycode_color">jComboBox</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]private [/color][color=#0000bb]void jButton1ActionPerformed[/color][color=#007700]([/color][color=#0000bb]java[/color][color=#007700].[/color][color=#0000bb]awt[/color][color=#007700].[/color][color=#0000bb]event[/color][color=#007700].[/color][color=#0000bb]ActionEvent evt[/color][COLOR=#007700]) {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]1[/color][color=#007700], [/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]3[/color][color=#007700], [/color][color=#0000bb]4[/color][color=#007700], [/color][color=#0000bb]5[/color][color=#007700], [/color][color=#0000bb]6[/color][color=#007700], [/color][color=#0000bb]7[/color][color=#007700], [/color][color=#0000bb]8[/color][color=#007700], [/color][color=#0000bb]9[/color][color=#007700], [/color][color=#0000bb]10 [/color][COLOR=#007700]};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for( [/COLOR][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]ages[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++ ){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]ages[/color][color=#007700][[/color][color=#0000bb]i[/color][COLOR=#007700]]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">لتفريغ حقل ال jComboBox</span> ..<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]1[/color][color=#007700], [/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]3[/color][color=#007700], [/color][color=#0000bb]4[/color][color=#007700], [/color][color=#0000bb]5[/color][color=#007700], [/color][color=#0000bb]6[/color][color=#007700], [/color][color=#0000bb]7[/color][color=#007700], [/color][color=#0000bb]8[/color][color=#007700], [/color][color=#0000bb]9[/color][color=#007700], [/color][color=#0000bb]10 [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">تم تعريف مصفوفة تتكون من عشرة قيم عددية صحيحة</span> ..<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]for( [/color][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]ages[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++ ){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]ages[/color][color=#007700][[/color][color=#0000bb]i[/color][COLOR=#007700]]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div></div>
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">قمنا تعريف متغير .. يمر علي جميع القيم العددية في المصفوفة بالترتيب حتي اخر قيمة .. ومن ثم وضع قيمة الحلقة النهائية في jComboBox</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">البرنامج الناتج</span></span></span> :<br />
<br />
</div>
</div>
</div>
</div>
</div>
<img src="https://vb4arb.com/vb/uploaded/18_11350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: center;" class="mycode_align">
</div>
</div>
<br />
برنامج بسيط علي المصفوفات احادية البعد ولكن بطريقة اخري :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700]array []={[/color][color=#0000bb]16[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]40[/color][color=#007700],[/color][color=#0000bb]1000[/color][color=#007700],[/color][color=#0000bb]2500[/color][COLOR=#007700]};<br />
[/COLOR][color=#0000bb]int n [/color][color=#007700], [/color][color=#0000bb]result[/color][color=#007700]=[/color][color=#0000bb]0[/color][COLOR=#007700];<br />
for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&lt;[/color][color=#0000bb]5[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]++)<br />
{<br />
[/COLOR][color=#0000bb]result [/color][color=#007700]+= array[[/color][color=#0000bb]n[/color][COLOR=#007700]];<br />
}<br />
[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]removeAll[/color][COLOR=#007700]();<br />
[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]result[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث قمنا بتعريف متغير صحيح <span style="color: blue;" class="mycode_color">n</span> .. يقوم هذا المتغير بالمرور علي عناصر اول خمسة عناصر بالمصفوفة و يقوم بجمعهم ويسند القيمة الي متغير اخر من خلال الامر التالي</span> :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]result [/color][color=#007700]+= array[[/color][color=#0000bb]n[/color][COLOR=#007700]]&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">ثانيا</span></span></span> : <span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">المصفوفات متعددة الابعاد ..</span></span></span> <span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">:</span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مثال علي تهيئة مصفوفة متعددة الابعاد لاستخدامها</span>:</span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700][][] Array = {{[/color][color=#0000bb]1[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700]},{[/color][color=#0000bb]10[/color][color=#007700],[/color][color=#0000bb]20[/color][color=#007700],[/color][color=#0000bb]30[/color][COLOR=#007700]}};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int numbers [/color][color=#007700][][]&nbsp;&nbsp;= {{[/color][color=#0000bb]1000[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]3000[/color][color=#007700],[/color][color=#0000bb]4000[/color][color=#007700]},{[/color][color=#0000bb]100[/color][color=#007700],[/color][color=#0000bb]200[/color][color=#007700],[/color][color=#0000bb]300[/color][color=#007700],[/color][color=#0000bb]400[/color][COLOR=#007700]}};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
</div>
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">طريقة حجز قيمة المصفوفة متعددة الابعاد في الذاكرة </span>:</span></div>
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">(مثال متقدم كثيرا يربط بين معظم ما اتي في الدروس السابقة من if , loop , strings , array )</span></span><br />
<div style="text-align: left;" class="mycode_align">
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int [/color][color=#007700][][] [/color][color=#0000bb]arrayOfInts [/color][color=#007700]= {{[/color][color=#0000bb]32[/color][color=#007700],[/color][color=#0000bb]87[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700],[/color][color=#0000bb]58[/color][color=#007700]},{[/color][color=#0000bb]12[/color][color=#007700],[/color][color=#0000bb]1076[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]8[/color][color=#007700]},{[/color][color=#0000bb]622[/color][color=#007700],[/color][color=#0000bb]127[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]955[/color][COLOR=#007700]}};<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int searchFor [/color][color=#007700]=[/color][color=#0000bb]12[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int i[/color][color=#007700],[/color][color=#0000bb]j [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]boolean foundIt[/color][color=#007700]=[/color][color=#0000bb]false[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]search[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ( [/COLOR][color=#0000bb]i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700].[/color][color=#0000bb]length [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for([/COLOR][color=#0000bb]j[/color][color=#007700]=[/color][color=#0000bb]0 [/color][color=#007700];[/color][color=#0000bb]j[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]].[/color][color=#0000bb]length[/color][color=#007700];[/color][color=#0000bb]j[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]][[/color][color=#0000bb]j[/color][color=#007700]] == [/color][color=#0000bb]searchFor[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]foundIt[/color][color=#007700]=[/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]foundIt[/color][COLOR=#007700]){<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"found" [/color][color=#007700]+ [/color][color=#0000bb]searchFor [/color][color=#007700]+ [/color][color=#dd0000]"at" [/color][color=#007700]+ [/color][color=#0000bb]i [/color][color=#007700]+[/color][color=#dd0000]","[/color][color=#007700]+ [/color][color=#0000bb]j[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">ويستخدم لتحديد موقع متغير في مصفوفة متعددة الابعاد</span> و هو 12 و موقعة 3,4<br />
<span style="font-weight: bold;" class="mycode_b">و الدالة عبارة عن دالة بحث تستخدم الحلقات التكرارية للمرور علي جميع متغيرات المصفوفة <br />
للحصول علي موقع المتغير في الذاكرة و اذا تمكنت من تحديد الموقع تضعه في اداة ليبل من خلال الشرط if ....</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align">
في النهاية انا جاهز ان شاء الله لاي استفسار ...<br />
<br />
---------------------------------------------------<br />
<span style="text-decoration: underline;" class="mycode_u">روابط تحميل الامثلة</span> :<br />
المثال الاول : <br />
<a href="https://vb4arb.com/vb/uploaded/18_01350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350637840.rar</a><br />
المثال الثاني :<br />
<a href="https://vb4arb.com/vb/uploaded/18_11350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_11350637840.rar</a><br />
المثال الثالث :<br />
<a href="https://vb4arb.com/vb/uploaded/18_21350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_21350637840.rar<span style="font-weight: bold;" class="mycode_b">&#8203;</span></a><br />
<br />
--------------------------------------------------<br />
و السلام عليكم ورحمة الله ...<br />
<br />
<br />
</div>
</div>
</div>
<br />
<br />
</div>
</div>
</div>
</div>
<br />
</div>
</div>
</div>
<br />
<br />
<br />
</div>
</div>
<br />
<br />
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ما هي المصفوفات arrays ؟</span> </span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">المصفوفات هي عبارة عن نوع متقدم من ابنية البيانات كالدوال و ال classes تسمح للمبرمج بان يحجز مكان لمجموعة من كبيرة من المتغيرات في الذاكرة دفعة واحدة و تكون هذه المتغيرات من نوع واحد اما اعداد صحيحة او اعداد عشرية او نصوص ..الخ ..</span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">وتنقسم المصفوفات الي نوعين </span></span></span>:<br />
1_المصفوفات احادية البعد .. Single Array<br />
2_المصفوفات متعددة الابعاد .. Multi-Dimensional Array<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">اولا</span></span></span> : <span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">المصفوفات احادية البعد .. :</span></span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مثال علي تهيئة مصفوفة احادية البعد لاستخدامها</span>:</span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700][] [/color][color=#0000bb]myarray [/color][color=#007700]={[/color][color=#0000bb]1[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]3[/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]10[/color][color=#007700], [/color][color=#0000bb]20[/color][color=#007700], [/color][color=#0000bb]30[/color][color=#007700], [/color][color=#0000bb]40[/color][color=#007700], [/color][color=#0000bb]50[/color][color=#007700], [/color][color=#0000bb]60[/color][color=#007700], [/color][color=#0000bb]70[/color][color=#007700], [/color][color=#0000bb]80[/color][color=#007700], [/color][color=#0000bb]90[/color][color=#007700], [/color][color=#0000bb]100 [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">طريقة حجز قيمة المصفوفة احادية البعد في الذاكرة </span>:</span></div>
<br />
<img src="https://vb4arb.com/vb/uploaded/18_01350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مصفوفات لمتغيرات اخري غير العددية مثل الحروف و القيم المنطقية</span>:</span><br />
<br />
<span style="color: red;" class="mycode_color">مصفوفة للقيم المنطقية <span style="color: blue;" class="mycode_color">boolean</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]boolean results[/color][color=#007700][] = { [/color][color=#0000bb]true[/color][color=#007700], [/color][color=#0000bb]false[/color][color=#007700], [/color][color=#0000bb]true[/color][color=#007700], [/color][color=#0000bb]false [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color">مصفوفة لايام الاسبوع اي قيم <span style="color: blue;" class="mycode_color">string</span></span> :<br />
</div>
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]String days[/color][color=#007700][] = { [/color][color=#0000bb]“Mon”[/color][color=#007700], [/color][color=#0000bb]“Tue”[/color][color=#007700], [/color][color=#0000bb]“Wed”[/color][color=#007700], [/color][color=#0000bb]“Thu”[/color][color=#007700], [/color][color=#0000bb]“Fri”[/color][color=#007700], [/color][color=#0000bb]“Sat”[/color][COLOR=#007700],<br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]“Sun”[/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">كانت هذه مجموعة امثلة علي الشكل المبسط للمصفوفات احادية البعد سواء ان كانت مصفوفة عددية او منطقية او حرفية ...وغيره...<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال</span> : برنامج يقوم بعمل استدعاء لكافة عناصر مصفوفة احادية .. و يضع عناصرها في اداة <span style="color: blue;" class="mycode_color">jComboBox</span></span> :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]private [/color][color=#0000bb]void jButton1ActionPerformed[/color][color=#007700]([/color][color=#0000bb]java[/color][color=#007700].[/color][color=#0000bb]awt[/color][color=#007700].[/color][color=#0000bb]event[/color][color=#007700].[/color][color=#0000bb]ActionEvent evt[/color][COLOR=#007700]) {&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]1[/color][color=#007700], [/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]3[/color][color=#007700], [/color][color=#0000bb]4[/color][color=#007700], [/color][color=#0000bb]5[/color][color=#007700], [/color][color=#0000bb]6[/color][color=#007700], [/color][color=#0000bb]7[/color][color=#007700], [/color][color=#0000bb]8[/color][color=#007700], [/color][color=#0000bb]9[/color][color=#007700], [/color][color=#0000bb]10 [/color][COLOR=#007700]};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for( [/COLOR][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]ages[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++ ){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]ages[/color][color=#007700][[/color][color=#0000bb]i[/color][COLOR=#007700]]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">لتفريغ حقل ال jComboBox</span> ..<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int ages[/color][color=#007700][] = { [/color][color=#0000bb]1[/color][color=#007700], [/color][color=#0000bb]2[/color][color=#007700], [/color][color=#0000bb]3[/color][color=#007700], [/color][color=#0000bb]4[/color][color=#007700], [/color][color=#0000bb]5[/color][color=#007700], [/color][color=#0000bb]6[/color][color=#007700], [/color][color=#0000bb]7[/color][color=#007700], [/color][color=#0000bb]8[/color][color=#007700], [/color][color=#0000bb]9[/color][color=#007700], [/color][color=#0000bb]10 [/color][COLOR=#007700]};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">تم تعريف مصفوفة تتكون من عشرة قيم عددية صحيحة</span> ..<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]for( [/color][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]ages[/color][color=#007700].[/color][color=#0000bb]length[/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++ ){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]ages[/color][color=#007700][[/color][color=#0000bb]i[/color][COLOR=#007700]]);<br />
&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div></div>
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">قمنا تعريف متغير .. يمر علي جميع القيم العددية في المصفوفة بالترتيب حتي اخر قيمة .. ومن ثم وضع قيمة الحلقة النهائية في jComboBox</span> ..<br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">البرنامج الناتج</span></span></span> :<br />
<br />
</div>
</div>
</div>
</div>
</div>
<img src="https://vb4arb.com/vb/uploaded/18_11350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: center;" class="mycode_align">
</div>
</div>
<br />
برنامج بسيط علي المصفوفات احادية البعد ولكن بطريقة اخري :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700]array []={[/color][color=#0000bb]16[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]40[/color][color=#007700],[/color][color=#0000bb]1000[/color][color=#007700],[/color][color=#0000bb]2500[/color][COLOR=#007700]};<br />
[/COLOR][color=#0000bb]int n [/color][color=#007700], [/color][color=#0000bb]result[/color][color=#007700]=[/color][color=#0000bb]0[/color][COLOR=#007700];<br />
for ([/COLOR][color=#0000bb]n[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700];[/color][color=#0000bb]n[/color][color=#007700]&lt;[/color][color=#0000bb]5[/color][color=#007700];[/color][color=#0000bb]n[/color][COLOR=#007700]++)<br />
{<br />
[/COLOR][color=#0000bb]result [/color][color=#007700]+= array[[/color][color=#0000bb]n[/color][COLOR=#007700]];<br />
}<br />
[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]removeAll[/color][COLOR=#007700]();<br />
[/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]result[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">حيث قمنا بتعريف متغير صحيح <span style="color: blue;" class="mycode_color">n</span> .. يقوم هذا المتغير بالمرور علي عناصر اول خمسة عناصر بالمصفوفة و يقوم بجمعهم ويسند القيمة الي متغير اخر من خلال الامر التالي</span> :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]result [/color][color=#007700]+= array[[/color][color=#0000bb]n[/color][COLOR=#007700]]&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">ثانيا</span></span></span> : <span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">المصفوفات متعددة الابعاد ..</span></span></span> <span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">:</span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">مثال علي تهيئة مصفوفة متعددة الابعاد لاستخدامها</span>:</span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]int [/color][color=#007700][][] Array = {{[/color][color=#0000bb]1[/color][color=#007700],[/color][color=#0000bb]2[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700]},{[/color][color=#0000bb]10[/color][color=#007700],[/color][color=#0000bb]20[/color][color=#007700],[/color][color=#0000bb]30[/color][COLOR=#007700]}};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int numbers [/color][color=#007700][][]&nbsp;&nbsp;= {{[/color][color=#0000bb]1000[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]3000[/color][color=#007700],[/color][color=#0000bb]4000[/color][color=#007700]},{[/color][color=#0000bb]100[/color][color=#007700],[/color][color=#0000bb]200[/color][color=#007700],[/color][color=#0000bb]300[/color][color=#007700],[/color][color=#0000bb]400[/color][COLOR=#007700]}};&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
</div>
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">طريقة حجز قيمة المصفوفة متعددة الابعاد في الذاكرة </span>:</span></div>
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">(مثال متقدم كثيرا يربط بين معظم ما اتي في الدروس السابقة من if , loop , strings , array )</span></span><br />
<div style="text-align: left;" class="mycode_align">
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] int [/color][color=#007700][][] [/color][color=#0000bb]arrayOfInts [/color][color=#007700]= {{[/color][color=#0000bb]32[/color][color=#007700],[/color][color=#0000bb]87[/color][color=#007700],[/color][color=#0000bb]3[/color][color=#007700],[/color][color=#0000bb]58[/color][color=#007700]},{[/color][color=#0000bb]12[/color][color=#007700],[/color][color=#0000bb]1076[/color][color=#007700],[/color][color=#0000bb]2000[/color][color=#007700],[/color][color=#0000bb]8[/color][color=#007700]},{[/color][color=#0000bb]622[/color][color=#007700],[/color][color=#0000bb]127[/color][color=#007700],[/color][color=#0000bb]77[/color][color=#007700],[/color][color=#0000bb]955[/color][COLOR=#007700]}};<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int searchFor [/color][color=#007700]=[/color][color=#0000bb]12[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]int i[/color][color=#007700],[/color][color=#0000bb]j [/color][color=#007700]= [/color][color=#0000bb]0[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]boolean foundIt[/color][color=#007700]=[/color][color=#0000bb]false[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]search[/color][COLOR=#007700]:<br />
&nbsp;&nbsp;&nbsp;&nbsp; for ( [/COLOR][color=#0000bb]i[/color][color=#007700]=[/color][color=#0000bb]0[/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700].[/color][color=#0000bb]length [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for([/COLOR][color=#0000bb]j[/color][color=#007700]=[/color][color=#0000bb]0 [/color][color=#007700];[/color][color=#0000bb]j[/color][color=#007700]&lt;[/color][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]].[/color][color=#0000bb]length[/color][color=#007700];[/color][color=#0000bb]j[/color][COLOR=#007700]++){<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]arrayOfInts[/color][color=#007700][[/color][color=#0000bb]i[/color][color=#007700]][[/color][color=#0000bb]j[/color][color=#007700]] == [/color][color=#0000bb]searchFor[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]foundIt[/color][color=#007700]=[/color][color=#0000bb]true[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; if ([/COLOR][color=#0000bb]foundIt[/color][COLOR=#007700]){<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"found" [/color][color=#007700]+ [/color][color=#0000bb]searchFor [/color][color=#007700]+ [/color][color=#dd0000]"at" [/color][color=#007700]+ [/color][color=#0000bb]i [/color][color=#007700]+[/color][color=#dd0000]","[/color][color=#007700]+ [/color][color=#0000bb]j[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">ويستخدم لتحديد موقع متغير في مصفوفة متعددة الابعاد</span> و هو 12 و موقعة 3,4<br />
<span style="font-weight: bold;" class="mycode_b">و الدالة عبارة عن دالة بحث تستخدم الحلقات التكرارية للمرور علي جميع متغيرات المصفوفة <br />
للحصول علي موقع المتغير في الذاكرة و اذا تمكنت من تحديد الموقع تضعه في اداة ليبل من خلال الشرط if ....</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350637715.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350637715.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align">
في النهاية انا جاهز ان شاء الله لاي استفسار ...<br />
<br />
---------------------------------------------------<br />
<span style="text-decoration: underline;" class="mycode_u">روابط تحميل الامثلة</span> :<br />
المثال الاول : <br />
<a href="https://vb4arb.com/vb/uploaded/18_01350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350637840.rar</a><br />
المثال الثاني :<br />
<a href="https://vb4arb.com/vb/uploaded/18_11350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_11350637840.rar</a><br />
المثال الثالث :<br />
<a href="https://vb4arb.com/vb/uploaded/18_21350637840.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_21350637840.rar<span style="font-weight: bold;" class="mycode_b">&#8203;</span></a><br />
<br />
--------------------------------------------------<br />
و السلام عليكم ورحمة الله ...<br />
<br />
<br />
</div>
</div>
</div>
<br />
<br />
</div>
</div>
</div>
</div>
<br />
</div>
</div>
</div>
<br />
<br />
<br />
</div>
</div>
<br />
<br />
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدوال و الاجراءات و الفرق بينهما في الجافا ..(4)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6531</link>
			<pubDate>Fri, 19 Oct 2012 09:06:48 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6531</guid>
			<description><![CDATA[<span style="font-weight: bold;" class="mycode_b">هذا الموضوع يعتبر من اهم المواضيع التي سأتحدث عنها في هذه الدورة لما له من اهمية كبيرة في طريقة كتابة الكود و تنظيمه في لغة الجافا ... فلغة الجافا بطيئة نوعا ما في تنفيذ بعض الاوامر و خاصة الاوامر المعقدة و لذالك نحتاج كثيرا الي تنظيم الكود الخاص بعملية معينة و الحاجة الي وضعه في مجموعات هذه المجموعات هي التي تسمي الدوال ..<br />
تخيل انك تحتاج الي كتابة كود يتكون من عشرون سطرا مثلا داخل اداة ذر ليتم تنفيذة مع حدث الضغط .. ماذا سيكون رد فعل البرنامج حيال ذلك !! <br />
ستجد ان هناك بطئ في تنفيذ مجموعة الاوامر هذه ..ولغة الجافا احوج ما تكون الي تنظيم و ضغط الكود وتحري الدقة اثناء كتابة الكود لاننا كما ذكرنا مسبقا ان لغة الجافا لا تتعامل مع عتاد الجهاز hardware مباشرتا و انما تحتاج الي مترجم و مفسر .<br />
<span style="color: Red;" class="mycode_color">[b]لذلك فكتابة الكود بطريقة معقدة غير منظمة في لغة الجافا لا داعي اليه !..</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">كما اود ان اوضح ان لغة الجافا حساسة ايضا من ناحيتين : <br />
الاولي ان لغة الجافا حساسة من حيث ترتيب التعليمات ..فمثلا لا يجوز ان تتعامل مع متغير ثم تستدعيه ..او ماشابه.<br />
الثانية ان لغة الجافا حساسة من ناحية كتابة الحروف .. فنجد ان العديد من المتغيرات تبدا بالحروف ال small و ايضا نجد ان العديد من الكلمات ذات المقطعين تبدا بالحروف الصغيرة ثم حروف كبيرة مثل <span style="color: Red;" class="mycode_color">jT</span>ext<span style="color: Red;" class="mycode_color">A</span>rea .. <br />
<br />
<span style="color: Red;" class="mycode_color">[b]و اود بالذكر انه لا داعي الي تعريف العديد من المتغيرات او الاستعانة بالعديد من المكتبات فكل هذا يقع علي عاتق كل من المترجم و المفسر و الآله الافتراضية JVM ..مما سيسبب بطئ في بعض الاحيان و الاستهلاك الملحوظ لعتاد الجهاز ..</span></span><br />
<br />
و لعدم الاطالة نبدا في موضوعنا اليوم و هو الدوال و الاجرائات في لغة الجافا ..<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Red;" class="mycode_color">اولا :</span> الدوال :<br />
و الدوال هنا هي مجموعة من التعليمات مضمنة ضمن مجموعة واحدة و لها عنوان و هو عنوان الدالة ..<br />
و الدوال في الاغلب تقوم بارجاع قيم اما صحيحة او غير ذلك ..<br />
<br />
<div style="text-align: left;" class="mycode_align"><span style="color: #007700;" class="mycode_color"><br />
</span><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>private int sys(int a,int b)<br />
{<br />
int a ;<br />
code //<br />
 return 0;<br />
}</code></div></div><span style="color: #007700;" class="mycode_color"><br />
</span><br />
<br />
<div style="text-align: right;" class="mycode_align">فنجد هنا ان الدالة مقسمة الي عدة اجزاء و هي :<br />
1_مستوي استدعاء الدالة و يتمثل في : [b]<span style="color: Blue;" class="mycode_color">private</span> </span>تمثل استدعاء الدالة علي المستوي المحلي للفورم .. <br />
2_نوع الدالة و يتمثل في : <span style="color: Blue;" class="mycode_color">int</span> اي ان الدالة صحيحة و القيم المرجعة قيم صحيحة ...<br />
3_اسم الدالة : <span style="color: Blue;" class="mycode_color">sys</span> و يمكنك تغيره كما تشاء ...<br />
4_القيم الممررة في الدالة .. كانك تعرف متغيرين صحيحين تماما <span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">int</span> a,<span style="color: Blue;" class="mycode_color">int</span> b</span></div>
</div>
5_جسم الدالة و هو الحيز المسموح بكتابة التعليمات داخلة <span style="font-weight: bold;" class="mycode_b"><span style="color: DimGray;" class="mycode_color">// code</span> <br />
6_دالة الارجاع للقيمة النهائية للدالة <span style="color: Blue;" class="mycode_color">sys</span> و هي قيمة صحيحة .. [b]<span style="color: Blue;" class="mycode_color">return <span style="color: Black;" class="mycode_color">a</span><br />
</span><br />
<span style="color: Red;" class="mycode_color">مثال بسيط لبرنامج يستخدم لحساب مساحة المستطيل بالاعتماد علي دالة :</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
</div>
[b]<br />
البرنامج الناتج :<br />
</span>[/b][/b]<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637378.jpg]" class="mycode_img" /><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]<span style="color: Red;" class="mycode_color">ثانيا :</span> الاجراءات</span> :<br />
وهي نوع من الدوال التي لا ترجع قيمة .. و في الاغلب نوعها <span style="color: Blue;" class="mycode_color">void</span> , او انها لا تحوي علي قيم ممررة و هي الاكثر شيوعا ..<br />
يمكننا استخدام هذا النوع من الدوال لتجميع عدد من الاوامر التي نحتاج اختصارها و استدعائها في حدث اخر توفيرا للوقت و زيادة في سرعة التنفيذ ..<br />
<br />
<span style="color: Red;" class="mycode_color">الشكل العام للدالة و هو بسيط للغاية :</span><br />
<div style="text-align: left;" class="mycode_align"><span style="color: #007700;" class="mycode_color"><br />
</span><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>private void clear()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //code&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</code></div></div><span style="color: #007700;" class="mycode_color"><br />
</span><br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: Red;" class="mycode_color">برنامج بسيط لتفريغ حقل نصي بالاعتماد علي اجراء :</span><br />
<div style="text-align: center;" class="mycode_align">
<img src="https://vb4arb.com/vb/uploaded/18_21350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
<div style="text-align: left;" class="mycode_align">
</div>
<span style="font-weight: bold;" class="mycode_b">البرنامج الناتج</span> :<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
</div>
</div>
<br />
<span style="color: Red;" class="mycode_color">برنامج بسيط لحساب مساحة الدائرة يستخدم دالة من نوع <span style="color: Blue;" class="mycode_color">void</span> بها قيم حسابية و لكنها لا ترجع قيمة :</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
[/b]<div style="text-align: left;" class="mycode_align"><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]البرنامج الناتج</span> :<br />
[/b]<div style="text-align: center;" class="mycode_align"><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]الفرق بين <span style="color: Blue;" class="mycode_color">public</span> , <span style="color: Blue;" class="mycode_color">void</span></span> :<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">public</span></span> تمثل استدعاء الاجراء من كامل المشروع ..<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">void </span></span>استدعاء الاجراء علي المستوي المحلي للفورم ..<br />
<br />
<span style="font-weight: bold;" class="mycode_b">انواع دوال اخري</span> :<br />
<span style="color: Blue;" class="mycode_color">int</span> دالة تعتمد علي قيم صحيح في بنائها الداخلي و تقوم بارجاع قيمة صحيحة ..<br />
<span style="color: Blue;" class="mycode_color">double </span>دالة تعتمد علي قيم كسرية في بنائها الداخلي و تقوم بارجاع قيمة كسرية ..<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>double str()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<br />
[b][b][b][b][b][b][align=center][align=right][align=left][align=right][align=center][align=right]&nbsp;&nbsp;&nbsp;&nbsp;}<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/b][/b][/b]</code></div></div><div style="text-align: left;" class="mycode_align">
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: Red;" class="mycode_color">في النهاية مع روابط التحميل</span> :<br />
--------------------------------------<br />
رابط تحميل امثلة الدرس :<br />
<a href="https://vb4arb.com/vb/uploaded/18_51350637378.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_51350637378.rar</a><br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b">المزيد قادم ... و السلام عليكم ورحمة الله ..</span><br />
</div>
</div>
[/b][/b][/b][/b]</div>
</div>
</div>
</div>
</div>
</div>
[/b][/b][/b]]]></description>
			<content:encoded><![CDATA[<span style="font-weight: bold;" class="mycode_b">هذا الموضوع يعتبر من اهم المواضيع التي سأتحدث عنها في هذه الدورة لما له من اهمية كبيرة في طريقة كتابة الكود و تنظيمه في لغة الجافا ... فلغة الجافا بطيئة نوعا ما في تنفيذ بعض الاوامر و خاصة الاوامر المعقدة و لذالك نحتاج كثيرا الي تنظيم الكود الخاص بعملية معينة و الحاجة الي وضعه في مجموعات هذه المجموعات هي التي تسمي الدوال ..<br />
تخيل انك تحتاج الي كتابة كود يتكون من عشرون سطرا مثلا داخل اداة ذر ليتم تنفيذة مع حدث الضغط .. ماذا سيكون رد فعل البرنامج حيال ذلك !! <br />
ستجد ان هناك بطئ في تنفيذ مجموعة الاوامر هذه ..ولغة الجافا احوج ما تكون الي تنظيم و ضغط الكود وتحري الدقة اثناء كتابة الكود لاننا كما ذكرنا مسبقا ان لغة الجافا لا تتعامل مع عتاد الجهاز hardware مباشرتا و انما تحتاج الي مترجم و مفسر .<br />
<span style="color: Red;" class="mycode_color">[b]لذلك فكتابة الكود بطريقة معقدة غير منظمة في لغة الجافا لا داعي اليه !..</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b">كما اود ان اوضح ان لغة الجافا حساسة ايضا من ناحيتين : <br />
الاولي ان لغة الجافا حساسة من حيث ترتيب التعليمات ..فمثلا لا يجوز ان تتعامل مع متغير ثم تستدعيه ..او ماشابه.<br />
الثانية ان لغة الجافا حساسة من ناحية كتابة الحروف .. فنجد ان العديد من المتغيرات تبدا بالحروف ال small و ايضا نجد ان العديد من الكلمات ذات المقطعين تبدا بالحروف الصغيرة ثم حروف كبيرة مثل <span style="color: Red;" class="mycode_color">jT</span>ext<span style="color: Red;" class="mycode_color">A</span>rea .. <br />
<br />
<span style="color: Red;" class="mycode_color">[b]و اود بالذكر انه لا داعي الي تعريف العديد من المتغيرات او الاستعانة بالعديد من المكتبات فكل هذا يقع علي عاتق كل من المترجم و المفسر و الآله الافتراضية JVM ..مما سيسبب بطئ في بعض الاحيان و الاستهلاك الملحوظ لعتاد الجهاز ..</span></span><br />
<br />
و لعدم الاطالة نبدا في موضوعنا اليوم و هو الدوال و الاجرائات في لغة الجافا ..<br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Red;" class="mycode_color">اولا :</span> الدوال :<br />
و الدوال هنا هي مجموعة من التعليمات مضمنة ضمن مجموعة واحدة و لها عنوان و هو عنوان الدالة ..<br />
و الدوال في الاغلب تقوم بارجاع قيم اما صحيحة او غير ذلك ..<br />
<br />
<div style="text-align: left;" class="mycode_align"><span style="color: #007700;" class="mycode_color"><br />
</span><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>private int sys(int a,int b)<br />
{<br />
int a ;<br />
code //<br />
 return 0;<br />
}</code></div></div><span style="color: #007700;" class="mycode_color"><br />
</span><br />
<br />
<div style="text-align: right;" class="mycode_align">فنجد هنا ان الدالة مقسمة الي عدة اجزاء و هي :<br />
1_مستوي استدعاء الدالة و يتمثل في : [b]<span style="color: Blue;" class="mycode_color">private</span> </span>تمثل استدعاء الدالة علي المستوي المحلي للفورم .. <br />
2_نوع الدالة و يتمثل في : <span style="color: Blue;" class="mycode_color">int</span> اي ان الدالة صحيحة و القيم المرجعة قيم صحيحة ...<br />
3_اسم الدالة : <span style="color: Blue;" class="mycode_color">sys</span> و يمكنك تغيره كما تشاء ...<br />
4_القيم الممررة في الدالة .. كانك تعرف متغيرين صحيحين تماما <span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">int</span> a,<span style="color: Blue;" class="mycode_color">int</span> b</span></div>
</div>
5_جسم الدالة و هو الحيز المسموح بكتابة التعليمات داخلة <span style="font-weight: bold;" class="mycode_b"><span style="color: DimGray;" class="mycode_color">// code</span> <br />
6_دالة الارجاع للقيمة النهائية للدالة <span style="color: Blue;" class="mycode_color">sys</span> و هي قيمة صحيحة .. [b]<span style="color: Blue;" class="mycode_color">return <span style="color: Black;" class="mycode_color">a</span><br />
</span><br />
<span style="color: Red;" class="mycode_color">مثال بسيط لبرنامج يستخدم لحساب مساحة المستطيل بالاعتماد علي دالة :</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
</div>
[b]<br />
البرنامج الناتج :<br />
</span>[/b][/b]<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637378.jpg]" class="mycode_img" /><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]<span style="color: Red;" class="mycode_color">ثانيا :</span> الاجراءات</span> :<br />
وهي نوع من الدوال التي لا ترجع قيمة .. و في الاغلب نوعها <span style="color: Blue;" class="mycode_color">void</span> , او انها لا تحوي علي قيم ممررة و هي الاكثر شيوعا ..<br />
يمكننا استخدام هذا النوع من الدوال لتجميع عدد من الاوامر التي نحتاج اختصارها و استدعائها في حدث اخر توفيرا للوقت و زيادة في سرعة التنفيذ ..<br />
<br />
<span style="color: Red;" class="mycode_color">الشكل العام للدالة و هو بسيط للغاية :</span><br />
<div style="text-align: left;" class="mycode_align"><span style="color: #007700;" class="mycode_color"><br />
</span><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>private void clear()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //code&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}</code></div></div><span style="color: #007700;" class="mycode_color"><br />
</span><br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: Red;" class="mycode_color">برنامج بسيط لتفريغ حقل نصي بالاعتماد علي اجراء :</span><br />
<div style="text-align: center;" class="mycode_align">
<img src="https://vb4arb.com/vb/uploaded/18_21350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
<div style="text-align: left;" class="mycode_align">
</div>
<span style="font-weight: bold;" class="mycode_b">البرنامج الناتج</span> :<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
</div>
</div>
<br />
<span style="color: Red;" class="mycode_color">برنامج بسيط لحساب مساحة الدائرة يستخدم دالة من نوع <span style="color: Blue;" class="mycode_color">void</span> بها قيم حسابية و لكنها لا ترجع قيمة :</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350637378.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350637378.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
[/b]<div style="text-align: left;" class="mycode_align"><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]البرنامج الناتج</span> :<br />
[/b]<div style="text-align: center;" class="mycode_align"><div style="text-align: right;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b">[b]الفرق بين <span style="color: Blue;" class="mycode_color">public</span> , <span style="color: Blue;" class="mycode_color">void</span></span> :<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">public</span></span> تمثل استدعاء الاجراء من كامل المشروع ..<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: Blue;" class="mycode_color">void </span></span>استدعاء الاجراء علي المستوي المحلي للفورم ..<br />
<br />
<span style="font-weight: bold;" class="mycode_b">انواع دوال اخري</span> :<br />
<span style="color: Blue;" class="mycode_color">int</span> دالة تعتمد علي قيم صحيح في بنائها الداخلي و تقوم بارجاع قيمة صحيحة ..<br />
<span style="color: Blue;" class="mycode_color">double </span>دالة تعتمد علي قيم كسرية في بنائها الداخلي و تقوم بارجاع قيمة كسرية ..<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>double str()<br />
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<br />
[b][b][b][b][b][b][align=center][align=right][align=left][align=right][align=center][align=right]&nbsp;&nbsp;&nbsp;&nbsp;}<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/align]<br />
[/b][/b][/b]</code></div></div><div style="text-align: left;" class="mycode_align">
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: Red;" class="mycode_color">في النهاية مع روابط التحميل</span> :<br />
--------------------------------------<br />
رابط تحميل امثلة الدرس :<br />
<a href="https://vb4arb.com/vb/uploaded/18_51350637378.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_51350637378.rar</a><br />
<br />
<br />
<span style="font-weight: bold;" class="mycode_b">المزيد قادم ... و السلام عليكم ورحمة الله ..</span><br />
</div>
</div>
[/b][/b][/b][/b]</div>
</div>
</div>
</div>
</div>
</div>
[/b][/b][/b]]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الحلقات التكرارية في الجافا ... (3)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6530</link>
			<pubDate>Fri, 19 Oct 2012 08:59:46 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6530</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b">لن اتطرق الي تفسير مفهوم الحلقات التكرارية في لغة الجافا .. لانه من مسماها هي تكرار لحدث او لامر معين او تكرارا للزياده او النقصان بنمط معين ....الخ ولكن الجميع يستطيع التعامل مع الحلقات التكرارية و هي لا تختلف في لغة الجافا عن نظيراتها في اللغات الاخري ..فهي تماما تشبه الحلقات التكرارية في لغة السي بلس ...<br />
<br />
و لكن ساتطرق الي كيفية استخدام الحلقات التكرارية مع محرر NetBeans و كيف نستخدم الحلقات هذه مع عدد من الادوات البرمجية في هذا المحرر تمهيدا للتعامل مع الادوات و المحرر بشكل موسع ..<br />
<br />
<span style="color: black;" class="mycode_color">كما نعلم انه في لغة السي بلس يوجد ثلاثة انواع رئيسية من الحلقات و هي :<br />
For و While و Do While ..<br />
و بالمثل تماما في لغة الجافا ..</span></span><span style="color: dimgray;" class="mycode_color"><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ا</span><span style="color: red;" class="mycode_color">ولا :</span> الحلقة For :<br />
<br />
</span></span></span><span style="color: black;" class="mycode_color">يعد هذا النوع من الحلقات التكرارية من ابسط الانواع في لغة الجافا كلها . .فتركيب هذه الحلقة بسيط للغاية و هو علي النحو التالي كما في لغة السي تماما :<br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :</span></span></span><br />
<br />
</span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]For ([/color][color=#0000bb]مقدار الزيادة [/color][color=#007700]; [/color][color=#0000bb]شرط الزيادة [/color][color=#007700]; [/color][color=#0000bb]القيمة الابتدائية [/color][COLOR=#007700])<br />
&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
{&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال</span></span></span> <span style="font-weight: bold;" class="mycode_b">لعمل برنامج بسيط جدا يقوم بعمل حلقة تكرارية من الاعداد من 1 الي 10 و يضع قيمة الحلقة في اداة List</span> :<br />
<br />
<span style="color: red;" class="mycode_color">الكود المطلوب :</span><br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]for ([/color][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]1 [/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;=[/color][color=#0000bb]10 [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]i[/color][COLOR=#007700]);<br />
}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ثانيا</span><span style="color: red;" class="mycode_color">:</span> الحلقة While :<br />
<br />
</span></span></span><span style="color: black;" class="mycode_color">وهي نوع متقدم من الحلقات التكرارية يتم فيها اختبار الشرط اولا فاذا تحقق يتم تنفيذ الحلقة و اذا لم يتحقق يتم كسر الحلقة (اي الخروج منها)..<br />
<br />
</span></span><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :<br />
<br />
</span></span></span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]while ([/color][color=#0000bb]Condition[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#ff8000]//Code&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#007700]}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
</div>
<span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال </span><span style="color: black;" class="mycode_color">بسيط لبرنامج يقوم بعد الاعداد تنازليا من 10 الي 1 ويضع ناتج الحلقة في اداة jComboBox</span></span></span> :<br />
<br />
<span style="color: red;" class="mycode_color">الكود المطلوب :<br />
</span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
 [/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]10 [/color][COLOR=#007700];<br />
 while ([/COLOR][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]i[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]i[/color][COLOR=#007700]--;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ثالثا</span><span style="color: red;" class="mycode_color">:</span> الحلقة Do While :<br />
<br />
</span></span><span style="color: black;" class="mycode_color">وهي نوع متقدم من الحلقات التكرارية يتم فيها تنفيذ تعليمات الحلقة اولا ثم فحص الشرط .. و يتم تنفيذ تعليمات الحلقة مره واحدة حتي في حالة عدم تحقق الشرط .<br />
<br />
</span></span></span><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :</span></span></span></span></span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=#000000][COLOR=#007700]do <br />
{<br />
[/COLOR][COLOR=#ff8000]//Code<br />
//Body <br />
 [/COLOR][color=#007700]}while ([/color][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال </span><span style="color: black;" class="mycode_color">بسيط لبرنامج يقوم بعد الاعداد الزوجية تنازليا من 20 الي 0 ويضع ناتج الحلقة في اداة jComboBox :<br />
<br />
</span></span></span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]20[/color][COLOR=#007700];<br />
do <br />
{<br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]i[/color][COLOR=#007700]); <br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]i [/color][color=#007700]= [/color][color=#0000bb]i [/color][color=#007700]- [/color][color=#0000bb]2[/color][COLOR=#007700];<br />
 }while ([/COLOR][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align">في نهاية الموضوع نجد ان هناك اتفاق بنسبة 100% في طريقة كتابة و استخدام الحلقات التكرارية بين الجافا و السي بلس .. اعتقد ان الجافا لغة سهلة و قوية ..أليس كذلك؟<br />
<br />
__________________________________________________ ____<br />
رابط تحميل المشروع :<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350637168.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350637168.rar</a><br />
<br />
<br />
<span style="font-style: italic;" class="mycode_i"><span style="font-weight: bold;" class="mycode_b">و السلام عليكم ورحمة الله ...</span></span><br />
<br />
<br />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b">لن اتطرق الي تفسير مفهوم الحلقات التكرارية في لغة الجافا .. لانه من مسماها هي تكرار لحدث او لامر معين او تكرارا للزياده او النقصان بنمط معين ....الخ ولكن الجميع يستطيع التعامل مع الحلقات التكرارية و هي لا تختلف في لغة الجافا عن نظيراتها في اللغات الاخري ..فهي تماما تشبه الحلقات التكرارية في لغة السي بلس ...<br />
<br />
و لكن ساتطرق الي كيفية استخدام الحلقات التكرارية مع محرر NetBeans و كيف نستخدم الحلقات هذه مع عدد من الادوات البرمجية في هذا المحرر تمهيدا للتعامل مع الادوات و المحرر بشكل موسع ..<br />
<br />
<span style="color: black;" class="mycode_color">كما نعلم انه في لغة السي بلس يوجد ثلاثة انواع رئيسية من الحلقات و هي :<br />
For و While و Do While ..<br />
و بالمثل تماما في لغة الجافا ..</span></span><span style="color: dimgray;" class="mycode_color"><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ا</span><span style="color: red;" class="mycode_color">ولا :</span> الحلقة For :<br />
<br />
</span></span></span><span style="color: black;" class="mycode_color">يعد هذا النوع من الحلقات التكرارية من ابسط الانواع في لغة الجافا كلها . .فتركيب هذه الحلقة بسيط للغاية و هو علي النحو التالي كما في لغة السي تماما :<br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :</span></span></span><br />
<br />
</span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]For ([/color][color=#0000bb]مقدار الزيادة [/color][color=#007700]; [/color][color=#0000bb]شرط الزيادة [/color][color=#007700]; [/color][color=#0000bb]القيمة الابتدائية [/color][COLOR=#007700])<br />
&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<br />
{&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال</span></span></span> <span style="font-weight: bold;" class="mycode_b">لعمل برنامج بسيط جدا يقوم بعمل حلقة تكرارية من الاعداد من 1 الي 10 و يضع قيمة الحلقة في اداة List</span> :<br />
<br />
<span style="color: red;" class="mycode_color">الكود المطلوب :</span><br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]for ([/color][color=#0000bb]int i[/color][color=#007700]=[/color][color=#0000bb]1 [/color][color=#007700]; [/color][color=#0000bb]i[/color][color=#007700]&lt;=[/color][color=#0000bb]10 [/color][color=#007700]; [/color][color=#0000bb]i[/color][COLOR=#007700]++)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]list1[/color][color=#007700].[/color][color=#0000bb]add[/color][color=#007700]([/color][color=#dd0000]""[/color][color=#007700]+[/color][color=#0000bb]i[/color][COLOR=#007700]);<br />
}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ثانيا</span><span style="color: red;" class="mycode_color">:</span> الحلقة While :<br />
<br />
</span></span></span><span style="color: black;" class="mycode_color">وهي نوع متقدم من الحلقات التكرارية يتم فيها اختبار الشرط اولا فاذا تحقق يتم تنفيذ الحلقة و اذا لم يتحقق يتم كسر الحلقة (اي الخروج منها)..<br />
<br />
</span></span><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :<br />
<br />
</span></span></span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#007700]while ([/color][color=#0000bb]Condition[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#ff8000]//Code&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#007700]}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
</div>
<span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال </span><span style="color: black;" class="mycode_color">بسيط لبرنامج يقوم بعد الاعداد تنازليا من 10 الي 1 ويضع ناتج الحلقة في اداة jComboBox</span></span></span> :<br />
<br />
<span style="color: red;" class="mycode_color">الكود المطلوب :<br />
</span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
 [/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]10 [/color][COLOR=#007700];<br />
 while ([/COLOR][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]i[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]i[/color][COLOR=#007700]--;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color">ثالثا</span><span style="color: red;" class="mycode_color">:</span> الحلقة Do While :<br />
<br />
</span></span><span style="color: black;" class="mycode_color">وهي نوع متقدم من الحلقات التكرارية يتم فيها تنفيذ تعليمات الحلقة اولا ثم فحص الشرط .. و يتم تنفيذ تعليمات الحلقة مره واحدة حتي في حالة عدم تحقق الشرط .<br />
<br />
</span></span></span><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">الصورة العامة للحلقة :</span></span></span></span></span><br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=#000000][COLOR=#007700]do <br />
{<br />
[/COLOR][COLOR=#ff8000]//Code<br />
//Body <br />
 [/COLOR][color=#007700]}while ([/color][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color"><span style="color: black;" class="mycode_color"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b"><span style="text-decoration: underline;" class="mycode_u">مثال </span><span style="color: black;" class="mycode_color">بسيط لبرنامج يقوم بعد الاعداد الزوجية تنازليا من 20 الي 0 ويضع ناتج الحلقة في اداة jComboBox :<br />
<br />
</span></span></span></span></span><div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]removeAllItems[/color][COLOR=#007700]();<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]int i [/color][color=#007700]= [/color][color=#0000bb]20[/color][COLOR=#007700];<br />
do <br />
{<br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]jComboBox1[/color][color=#007700].[/color][color=#0000bb]addItem[/color][color=#007700]([/color][color=#0000bb]i[/color][COLOR=#007700]); <br />
&nbsp;&nbsp;[/COLOR][color=#0000bb]i [/color][color=#007700]= [/color][color=#0000bb]i [/color][color=#007700]- [/color][color=#0000bb]2[/color][COLOR=#007700];<br />
 }while ([/COLOR][color=#0000bb]i [/color][color=#007700]&gt;= [/color][color=#0000bb]1[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][/COLOR]</code></div></div><br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350637027.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350637027.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<div style="text-align: right;" class="mycode_align">في نهاية الموضوع نجد ان هناك اتفاق بنسبة 100% في طريقة كتابة و استخدام الحلقات التكرارية بين الجافا و السي بلس .. اعتقد ان الجافا لغة سهلة و قوية ..أليس كذلك؟<br />
<br />
__________________________________________________ ____<br />
رابط تحميل المشروع :<br />
<a href="https://vb4arb.com/vb/uploaded/18_01350637168.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350637168.rar</a><br />
<br />
<br />
<span style="font-style: italic;" class="mycode_i"><span style="font-weight: bold;" class="mycode_b">و السلام عليكم ورحمة الله ...</span></span><br />
<br />
<br />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[بني التحكم و حالاتها في الجافا + امثلة عملية .. (2)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6529</link>
			<pubDate>Fri, 19 Oct 2012 08:52:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6529</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
لا غني لاي مبرمج عن بني التحكم في اي لغة من لغات البرمجة ..ذلك لانك باستعانتك للجمل الشرطية تحدد للبرنامج الطريق الذي سيسير علية لفهم رغبات المستخدم و استيعاب كافة متطلباته ... <br />
<br />
تشترك العديد من لغات البرمجة في الحالات الشرطية و نجد هنا توافق كبير بين لغتي السي بلس و الجافا في طرق تناول مثل هذه الشروط ..<br />
<br />
مثال : <br />
<br />
في لغة السي بلس نعبر عن جملة الشرط if كالتالي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">بالمثل في الجافا ايضا :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color">تستخدم الحالة <span style="font-weight: bold;" class="mycode_b">if</span> في الجافا لاختبار الشرط اولا فاذا تحقق يتم تنفيذ الكود و ان لم يتحقق فلا تنفذ و هكذا ...</span><br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">هناك ثلاثة اوضاع لكتابة الكود بالشرط if :</span></span></span><br />
1_<span style="color: dimgray;" class="mycode_color">الاستخدام الاولي للدالة if في حالة عدم استخدام الشرط المناقد .</span><br />
2_<span style="color: dimgray;" class="mycode_color">استخدام الدالة jf و معها الشرط المناقد ( if ..... else ).</span><br />
3_<span style="color: dimgray;" class="mycode_color">في حالة تعدد حالات الشرط ( if .... else if .... else )..</span> فيما يسمي nested if ..<br />
<br />
الصيغة العامة للحالة الاولي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">الصيغة العامة للحالة الثانية :<br />
<br />
</div>
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if ([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#ff8000]//none expression sucess <br />
[/COLOR][COLOR=#007700]}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">الصيغة العامة للحالة الثالثة :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if ([/color][color=#0000bb]expression1[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else if ([/COLOR][color=#0000bb]expression2[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else<br />
}<br />
[/COLOR][COLOR=#ff8000]//none expression sucess <br />
[/COLOR][COLOR=#007700]{&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">باستخدام محرر NetBeans سنقو الان بعمل برنامج لتحديد تقديرات الطلبة و سنحتاج الي :<br />
jTextField1<br />
jLabel1<br />
jButton1<br />
<br />
كما في الصورة التالية :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350636695.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350636695.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<br />
في حدث ال Action performed الذي يكفي click نكتب الكود التالي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] x [/color][color=#007700]=&nbsp;&nbsp;[/color][color=#0000bb]Float[/color][color=#007700].[/color][color=#0000bb]parseFloat[/color][color=#007700]([/color][color=#0000bb]jTextField1[/color][color=#007700].[/color][color=#0000bb]getText[/color][COLOR=#007700]());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]0&nbsp;&nbsp;[/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]35[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ضعيف جدا"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]35 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]50[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ضعيف"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]50 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]65[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"مقبول"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]65 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]75[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"جيد"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]75 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]85[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"جيد جدا"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]85 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]100[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ممتاز"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"الرجاء التاكد من القيم&nbsp;&nbsp;المدخلة"[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">البرنامج الناتج ستجدونه في ايقونة مرفقة بالمشروع تسمي dist</span></span><br />
<br />
البرنامج الناتج :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350636695.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350636695.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<br />
</div>
</div>
</div>
</div>
<br />
<br />
</div>
</div>
</div>
</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
لا غني لاي مبرمج عن بني التحكم في اي لغة من لغات البرمجة ..ذلك لانك باستعانتك للجمل الشرطية تحدد للبرنامج الطريق الذي سيسير علية لفهم رغبات المستخدم و استيعاب كافة متطلباته ... <br />
<br />
تشترك العديد من لغات البرمجة في الحالات الشرطية و نجد هنا توافق كبير بين لغتي السي بلس و الجافا في طرق تناول مثل هذه الشروط ..<br />
<br />
مثال : <br />
<br />
في لغة السي بلس نعبر عن جملة الشرط if كالتالي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">بالمثل في الجافا ايضا :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: dimgray;" class="mycode_color">تستخدم الحالة <span style="font-weight: bold;" class="mycode_b">if</span> في الجافا لاختبار الشرط اولا فاذا تحقق يتم تنفيذ الكود و ان لم يتحقق فلا تنفذ و هكذا ...</span><br />
<br />
<span style="color: red;" class="mycode_color"><span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b">هناك ثلاثة اوضاع لكتابة الكود بالشرط if :</span></span></span><br />
1_<span style="color: dimgray;" class="mycode_color">الاستخدام الاولي للدالة if في حالة عدم استخدام الشرط المناقد .</span><br />
2_<span style="color: dimgray;" class="mycode_color">استخدام الدالة jf و معها الشرط المناقد ( if ..... else ).</span><br />
3_<span style="color: dimgray;" class="mycode_color">في حالة تعدد حالات الشرط ( if .... else if .... else )..</span> فيما يسمي nested if ..<br />
<br />
الصيغة العامة للحالة الاولي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">الصيغة العامة للحالة الثانية :<br />
<br />
</div>
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if ([/color][color=#0000bb]expression[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][COLOR=#ff8000]//none expression sucess <br />
[/COLOR][COLOR=#007700]}&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">الصيغة العامة للحالة الثالثة :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb][/color][color=#007700]if ([/color][color=#0000bb]expression1[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp;[/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else if ([/COLOR][color=#0000bb]expression2[/color][COLOR=#007700])<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]statement1[/color][COLOR=#007700];<br />
&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]statement2[/color][COLOR=#007700]; <br />
}<br />
else<br />
}<br />
[/COLOR][COLOR=#ff8000]//none expression sucess <br />
[/COLOR][COLOR=#007700]{&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align">باستخدام محرر NetBeans سنقو الان بعمل برنامج لتحديد تقديرات الطلبة و سنحتاج الي :<br />
jTextField1<br />
jLabel1<br />
jButton1<br />
<br />
كما في الصورة التالية :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350636695.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350636695.jpg]" class="mycode_img" /><br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
</div>
<br />
في حدث ال Action performed الذي يكفي click نكتب الكود التالي :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=#000000][COLOR=#0000bb] x [/color][color=#007700]=&nbsp;&nbsp;[/color][color=#0000bb]Float[/color][color=#007700].[/color][color=#0000bb]parseFloat[/color][color=#007700]([/color][color=#0000bb]jTextField1[/color][color=#007700].[/color][color=#0000bb]getText[/color][COLOR=#007700]());<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]0&nbsp;&nbsp;[/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]35[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ضعيف جدا"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]35 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]50[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ضعيف"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]50 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]65[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"مقبول"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]65 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]75[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"جيد"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]75 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]85[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"جيد جدا"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else if&nbsp;&nbsp;([/COLOR][color=#0000bb]x[/color][color=#007700]&gt;=[/color][color=#0000bb]85 [/color][color=#007700]&amp; [/color][color=#0000bb]x[/color][color=#007700]&lt;=[/color][color=#0000bb]100[/color][COLOR=#007700])<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"ممتاز"[/color][COLOR=#007700]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [/COLOR][color=#0000bb]jLabel1[/color][color=#007700].[/color][color=#0000bb]setText[/color][color=#007700]([/color][color=#dd0000]"الرجاء التاكد من القيم&nbsp;&nbsp;المدخلة"[/color][COLOR=#007700]);&nbsp;&nbsp;<br />
[/COLOR][color=#0000bb][/color][/COLOR]</code></div></div><br />
<div style="text-align: right;" class="mycode_align"><span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">البرنامج الناتج ستجدونه في ايقونة مرفقة بالمشروع تسمي dist</span></span><br />
<br />
البرنامج الناتج :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350636695.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350636695.jpg]" class="mycode_img" /><br />
<br />
<br />
</div>
</div>
</div>
<br />
<br />
<br />
<br />
<br />
<br />
</div>
</div>
</div>
</div>
<br />
<br />
</div>
</div>
</div>
</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[المتغيرات - المعاملات في الجافا + امثلة .. (1)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6528</link>
			<pubDate>Fri, 19 Oct 2012 08:51:00 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6528</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">في هذا الموضوع سنتناول انواع المتغيرات و المعاملات في لغة الجافا و التي هي شبيهة الي حد كبير بلغتي السي بلس و سي شارب ....</span></span><br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">اولا المتغيرات و تنقسم الي :</span></span><br />
--------------------------------<br />
1- متغير صحيح .<br />
2-متغير كسري .<br />
3 -متغير نصي .<br />
4-متغير منطقي .<br />
<br />
و المتغيرات هي وسيلة تستخدم لحجز قيم معينة بالزاكرة لتهيئة استخدامها في البرنامج علي حسب حجمها و نوعها ...وهذا كان ابسط معني للمتغيرات .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">1_المتغيرات الصحيحة مثل :</span><br />
-------------------------------<br />
byte ------ حجمها بالذاكرة : 8 بت .<br />
short ------ حجمها بالذاكرة : 16 بت .<br />
int ------ حجمها بالذاكرة : 32 بت .<br />
long ------ حجمها بالذاكرة : 64 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">2_المتغيرات الكسرية مثل :</span><br />
-------------------------------<br />
float ------ حجمها بالذاكرة : 32 بت .<br />
double ------ حجمها بالذاكرة : 64 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">3_المتغيرات النصية مثل :</span><br />
----------------------------<br />
char ------ حجمها بالذاكرة : 16 بت .<br />
String ------ حجمها بالذاكرة : &gt;16 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">4_المتغيرات المنطقية مثل :</span><br />
----------------------------<br />
boolean ------ حجمها بالذاكرة : 1 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">شروط يجب مراعاتها عند تعريف المتغيرات :</span><br />
------------------------------------------------<br />
1- متغير في جافا يمكن أن يبتدئ ب : &#36; أو _ أو بحرف، ولا يجب أن يبتدئ برقم .<br />
2- بعد كتابة الحرف الأول من المتغير، يمكنه أن يحتوي على أي حرف وأي رقم .<br />
3- % ، * ، @ هي عبارة عن رموز محجوزة لجافا ومن الأحسن تفاديها .<br />
4- لغة جافا تفرق ما بين الكتابة بحروف كبيرة وحروف صغيرة لهذا يرجى الإنتباه عند استخدمها .<br />
5- من الأحسن أن يكون للمتغير معنى وذلك لتوضيح الأمور بالنسبة للزبون .<br />
6- لا يجب على المتغير أن يكون أحد هذه الأسماء :<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b">تهيئة المتغيرات :</span><br />
-------------------<br />
يفضل عند تهيئة المتغيرات في لغة الجافا ان يتم الاستعانة في المتغيرات داخل دوال او Structure او الاستعانة بها في منطقة المتغيرات المحلية حتي نجعل المترجم يترجم الكود باسرع ما عنده ..وينصح ايضا بعدم الاستعانة بالكثير من المتغيرات في موقع واحد من البرنامج بل يجب توزيع المتغيرات في كافة ارجاء البرنامج ..و الاستغناء عن المتغيرات الغير مستخدمة <br />
ينصح ايضا بعمل ضغط لاكواد المتغيرات مثال :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>int i , j , k ;</code></div></div></div>
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">ثانيا المعاملات وتنقسم الي :</span></span><br />
--------------------------------<br />
<span style="font-weight: bold;" class="mycode_b">1_معاملات رياضية :</span><br />
----------------------<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b">2_معاملات منطقية :</span><br />
-----------------------<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال بسيط لترابط الموضوع :</span></span><br />
-------------------------------<br />
اولا نفتح برنامج NetBeans , ونقوم بوضع الادوات المعروضة بالصورة :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350636270.jpg]" class="mycode_img" /></div>
<br />
نعرف المتغيرات التالية : num1 , num2 , result : <br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>double num1,num2,result;</code></div></div></div>
<br />
في حدث الضغط علي زر الجمع نضع الكود لتالي :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 + num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث الضغط علي زر الطرح نضع الكود لتالي :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 - num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث القسمة :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 / num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث الضرب :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 * num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ملاحظات :</span></span><br />
-&gt; لماذا وضعنا علامات التنصيص هذه في السطر الاخير من الكود ؟<br />
- تم وضع "" لاننا نريد ارجاع الناتج كقيمة نصية و اضافتها في مربع النص الرابع..<br />
<br />
-&gt; ما هي الدالة getText و Double.parseDouble :<br />
1- الدالة getText : تستخدم للحصول علي النصوص من مربعات النص وتخزينها مؤقتا في الذاكرة ..<br />
2- Double.parseDouble : تحويل الارقام المدخلة في مربعات النص من نصية الي عددية ثم ارجاعها الي قيم المتغيرات الاساسية num1 , num2 ...<br />
<br />
في حدث الضغط علي الزر الاخير :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>jTextField3.setText(gr);</code></div></div></div>
<br />
وذالك لارجاع قيمة المتغير String الذي قمنا بتعريفة الي jTextField3 ....<br />
<br />
و الشكل النهائي للتطبيق : <br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_51350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_51350636270.jpg]" class="mycode_img" /></div>
<br />
__________________________________________________ ____<br />
رابط تحميل المشروع : <br />
<a href="https://vb4arb.com/vb/uploaded/18_01350636625.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350636625.rar</a>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">Friendassist<br />
<br />
</span></span></span></span></span></div>
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">في هذا الموضوع سنتناول انواع المتغيرات و المعاملات في لغة الجافا و التي هي شبيهة الي حد كبير بلغتي السي بلس و سي شارب ....</span></span><br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">اولا المتغيرات و تنقسم الي :</span></span><br />
--------------------------------<br />
1- متغير صحيح .<br />
2-متغير كسري .<br />
3 -متغير نصي .<br />
4-متغير منطقي .<br />
<br />
و المتغيرات هي وسيلة تستخدم لحجز قيم معينة بالزاكرة لتهيئة استخدامها في البرنامج علي حسب حجمها و نوعها ...وهذا كان ابسط معني للمتغيرات .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">1_المتغيرات الصحيحة مثل :</span><br />
-------------------------------<br />
byte ------ حجمها بالذاكرة : 8 بت .<br />
short ------ حجمها بالذاكرة : 16 بت .<br />
int ------ حجمها بالذاكرة : 32 بت .<br />
long ------ حجمها بالذاكرة : 64 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">2_المتغيرات الكسرية مثل :</span><br />
-------------------------------<br />
float ------ حجمها بالذاكرة : 32 بت .<br />
double ------ حجمها بالذاكرة : 64 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">3_المتغيرات النصية مثل :</span><br />
----------------------------<br />
char ------ حجمها بالذاكرة : 16 بت .<br />
String ------ حجمها بالذاكرة : &gt;16 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">4_المتغيرات المنطقية مثل :</span><br />
----------------------------<br />
boolean ------ حجمها بالذاكرة : 1 بت .<br />
<br />
<span style="font-weight: bold;" class="mycode_b">شروط يجب مراعاتها عند تعريف المتغيرات :</span><br />
------------------------------------------------<br />
1- متغير في جافا يمكن أن يبتدئ ب : &#36; أو _ أو بحرف، ولا يجب أن يبتدئ برقم .<br />
2- بعد كتابة الحرف الأول من المتغير، يمكنه أن يحتوي على أي حرف وأي رقم .<br />
3- % ، * ، @ هي عبارة عن رموز محجوزة لجافا ومن الأحسن تفاديها .<br />
4- لغة جافا تفرق ما بين الكتابة بحروف كبيرة وحروف صغيرة لهذا يرجى الإنتباه عند استخدمها .<br />
5- من الأحسن أن يكون للمتغير معنى وذلك لتوضيح الأمور بالنسبة للزبون .<br />
6- لا يجب على المتغير أن يكون أحد هذه الأسماء :<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_01350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b">تهيئة المتغيرات :</span><br />
-------------------<br />
يفضل عند تهيئة المتغيرات في لغة الجافا ان يتم الاستعانة في المتغيرات داخل دوال او Structure او الاستعانة بها في منطقة المتغيرات المحلية حتي نجعل المترجم يترجم الكود باسرع ما عنده ..وينصح ايضا بعدم الاستعانة بالكثير من المتغيرات في موقع واحد من البرنامج بل يجب توزيع المتغيرات في كافة ارجاء البرنامج ..و الاستغناء عن المتغيرات الغير مستخدمة <br />
ينصح ايضا بعمل ضغط لاكواد المتغيرات مثال :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>int i , j , k ;</code></div></div></div>
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_11350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="color: red;" class="mycode_color"><span style="font-weight: bold;" class="mycode_b">ثانيا المعاملات وتنقسم الي :</span></span><br />
--------------------------------<br />
<span style="font-weight: bold;" class="mycode_b">1_معاملات رياضية :</span><br />
----------------------<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_21350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_21350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b">2_معاملات منطقية :</span><br />
-----------------------<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_31350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_31350636270.jpg]" class="mycode_img" /></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">مثال بسيط لترابط الموضوع :</span></span><br />
-------------------------------<br />
اولا نفتح برنامج NetBeans , ونقوم بوضع الادوات المعروضة بالصورة :<br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_41350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_41350636270.jpg]" class="mycode_img" /></div>
<br />
نعرف المتغيرات التالية : num1 , num2 , result : <br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>double num1,num2,result;</code></div></div></div>
<br />
في حدث الضغط علي زر الجمع نضع الكود لتالي :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 + num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث الضغط علي زر الطرح نضع الكود لتالي :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 - num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث القسمة :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 / num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
في حدث الضرب :<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>num1 = Double.parseDouble(jTextField1.getText()); <br />
num2 = Double.parseDouble(jTextField2.getText());<br />
result = num1 * num2;<br />
jTextField4.setText("" + result);</code></div></div></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="color: red;" class="mycode_color">ملاحظات :</span></span><br />
-&gt; لماذا وضعنا علامات التنصيص هذه في السطر الاخير من الكود ؟<br />
- تم وضع "" لاننا نريد ارجاع الناتج كقيمة نصية و اضافتها في مربع النص الرابع..<br />
<br />
-&gt; ما هي الدالة getText و Double.parseDouble :<br />
1- الدالة getText : تستخدم للحصول علي النصوص من مربعات النص وتخزينها مؤقتا في الذاكرة ..<br />
2- Double.parseDouble : تحويل الارقام المدخلة في مربعات النص من نصية الي عددية ثم ارجاعها الي قيم المتغيرات الاساسية num1 , num2 ...<br />
<br />
في حدث الضغط علي الزر الاخير :<br />
<br />
<div style="text-align: left;" class="mycode_align">
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>jTextField3.setText(gr);</code></div></div></div>
<br />
وذالك لارجاع قيمة المتغير String الذي قمنا بتعريفة الي jTextField3 ....<br />
<br />
و الشكل النهائي للتطبيق : <br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_51350636270.jpg" loading="lazy"  alt="[صورة مرفقة: 18_51350636270.jpg]" class="mycode_img" /></div>
<br />
__________________________________________________ ____<br />
رابط تحميل المشروع : <br />
<a href="https://vb4arb.com/vb/uploaded/18_01350636625.rar" target="_blank" rel="noopener" class="mycode_url">https://vb4arb.com/vb/uploaded/18_01350636625.rar</a>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس السادس عشر - الطرق Methods]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6527</link>
			<pubDate>Fri, 19 Oct 2012 08:42:22 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6527</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته</span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01349595783.gif" loading="lazy"  alt="[صورة مرفقة: 18_01349595783.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: black;" class="mycode_color">الطرق "Methods" هى طريقك لكتابة برامج إحترافية مما سيوفر عليك تعب وعناء تكرار الأكواد البرمجية تعرف الطريقة فى لغات البرمجة الأخري بالدوال "Functions" ولاكن فى الجافا تسمي "Methods" <br />
<br />
شكل الطريقة يكون على الشكل التالي :<br />
<br />
محدد الوصول ثم static ثم نوع البيانات الراجعة من الطريقة ثم اسم الطريقة ( نوع واسماء المتغيرات الداخلة للطريقة ) { <br />
<br />
جسم الطريقة أو الكود المراد تنفيذه<br />
<br />
جملة return ثم القيمة المرجعة <br />
<br />
ولا تكتب جملة return إذا كانت الطريقة لا ترجع قيم<br />
}<br />
<br />
مثال على ذلك :</span></span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=blue]private static int[/color] sum( int x , int y ) {<br />
[color=blue]int [/color]out = x + y ;<br />
[color=blue]return [/color]out;<br />
}</code></div></div><span style="font-size: 5pt;" class="mycode_size">كما فى المثال السابق تم تعريف محدد الوصول للطريقة private أى لا تسخدم إلا داخل الكلاس المعرفة داخلة وتوجد كلمة public أى الطريقة عامة ويمكن إستخدامها من أى كلاس فى البرنامج وإن لم تكتب محدد الوصول تكون الطريقة مرئية فقط للكلاسات داخل الباكج الواحده فقط<br />
<br />
ثانيا : كلمة static تستخدم إذا كنت سوف تستخدم الطريقة داخل الكلاس المعرفة داخلة<br />
<br />
ثالثاً : نوع القيم التي ترجعها الطريقة<br />
<br />
رابعاً : اسم الطريقة ملحوظة على اسم الطريقة يفضل أن يكون حرفها صغيره وإن بدأت بأكثر من مقطع يكون أول المقطع حرف كبير سوف تلاحظ هذا دائماً فى الطرق المدمجة فى حزمة الجافا الأساسية<br />
<br />
خامساً : القيم التى تأخذها الطريقة يجب أن تعرف داخل أقوس البارامترات للطريقة<br />
<br />
سادساً : جسم الطريقة<br />
<br />
سابعا : جملة return ولا حاجة لها إن كانت الطريقة لا ترجع أى قيم .<br />
<br />
كود برنامج معرف داخلة عدة طرق وكيفية إستدعائها :</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import java.util.Scanner;<br />
public class Methods{<br />
// هذه هى الطريقة الأساسية التى يعمل منها البرنامج<br />
public static void main( String args[]){<br />
Scanner op=new Scanner(System.in);<br />
System.out.print("Please enter first number :&#92;n");<br />
String number1=op.next();<br />
System.out.print("Please enter your operand + or * or / :&#92;n");<br />
String sign=op.next();<br />
System.out.print("Please enter scond number :&#92;n");<br />
String number2=op.next();<br />
if( sign.equals("+") ){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
int o=sumNumbers( number1i , number2i );<br />
String oo=o+"";<br />
double od=Double.parseDouble(oo);<br />
outP(od);<br />
}else if(sign.equals("*")){<br />
double number1d=Double.parseDouble(number1);<br />
double number2d=Double.parseDouble(number2);<br />
double o=multiNumbers( number1d , number2d );<br />
outP(o);<br />
}else if(sign.equals("/")){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
double o=divNumbers( number1i , number2i );<br />
outP(o);<br />
}<br />
outP();<br />
} // end main Method<br />
<br />
// هذه الطريقة تأخدذ قيمة كسرية ولا ترجع بأى قيمة وإنما تطبع القيمة على الشاشة<br />
public static void outP(double input){<br />
System.out.print(input);<br />
} // end outP Method<br />
<br />
// هذه الطريقة لا تأخذ قيم ولا ترجع أيضاً أى قيم<br />
public static void outP(){<br />
System.out.print("&#92;n End Of Program");<br />
} // end outP Method<br />
<br />
// هذه الطريقة تقوم بجمع عددين وتعود بقيمة صحيحة<br />
private static int sumNumbers( int num1 , int num2 ){<br />
int out = num1 + num2 ;<br />
return out;<br />
} // end sumNumbers Method<br />
<br />
// هذه الطريقة تقوم بضرب عددين صحيحين وتعود بقيمة صحيحة أيضا<br />
private static double multiNumbers(double num1, double num2){<br />
double out = num1*num2;<br />
return out;<br />
} // end multiNumbers Method<br />
<br />
// هذه الطريقة تقوم بقسمة عددين صحيحين وتعود بقيمة كسرية<br />
private static double divNumbers(int num1, int num2){<br />
double out = num1/num2;<br />
return out;<br />
} // end divNumbers Method<br />
} // end class</code></div></div><span style="font-size: 6pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">والسلام عليكم ورحمة الله وبركاتة</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته</span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01349595783.gif" loading="lazy"  alt="[صورة مرفقة: 18_01349595783.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: black;" class="mycode_color">الطرق "Methods" هى طريقك لكتابة برامج إحترافية مما سيوفر عليك تعب وعناء تكرار الأكواد البرمجية تعرف الطريقة فى لغات البرمجة الأخري بالدوال "Functions" ولاكن فى الجافا تسمي "Methods" <br />
<br />
شكل الطريقة يكون على الشكل التالي :<br />
<br />
محدد الوصول ثم static ثم نوع البيانات الراجعة من الطريقة ثم اسم الطريقة ( نوع واسماء المتغيرات الداخلة للطريقة ) { <br />
<br />
جسم الطريقة أو الكود المراد تنفيذه<br />
<br />
جملة return ثم القيمة المرجعة <br />
<br />
ولا تكتب جملة return إذا كانت الطريقة لا ترجع قيم<br />
}<br />
<br />
مثال على ذلك :</span></span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=blue]private static int[/color] sum( int x , int y ) {<br />
[color=blue]int [/color]out = x + y ;<br />
[color=blue]return [/color]out;<br />
}</code></div></div><span style="font-size: 5pt;" class="mycode_size">كما فى المثال السابق تم تعريف محدد الوصول للطريقة private أى لا تسخدم إلا داخل الكلاس المعرفة داخلة وتوجد كلمة public أى الطريقة عامة ويمكن إستخدامها من أى كلاس فى البرنامج وإن لم تكتب محدد الوصول تكون الطريقة مرئية فقط للكلاسات داخل الباكج الواحده فقط<br />
<br />
ثانيا : كلمة static تستخدم إذا كنت سوف تستخدم الطريقة داخل الكلاس المعرفة داخلة<br />
<br />
ثالثاً : نوع القيم التي ترجعها الطريقة<br />
<br />
رابعاً : اسم الطريقة ملحوظة على اسم الطريقة يفضل أن يكون حرفها صغيره وإن بدأت بأكثر من مقطع يكون أول المقطع حرف كبير سوف تلاحظ هذا دائماً فى الطرق المدمجة فى حزمة الجافا الأساسية<br />
<br />
خامساً : القيم التى تأخذها الطريقة يجب أن تعرف داخل أقوس البارامترات للطريقة<br />
<br />
سادساً : جسم الطريقة<br />
<br />
سابعا : جملة return ولا حاجة لها إن كانت الطريقة لا ترجع أى قيم .<br />
<br />
كود برنامج معرف داخلة عدة طرق وكيفية إستدعائها :</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import java.util.Scanner;<br />
public class Methods{<br />
// هذه هى الطريقة الأساسية التى يعمل منها البرنامج<br />
public static void main( String args[]){<br />
Scanner op=new Scanner(System.in);<br />
System.out.print("Please enter first number :&#92;n");<br />
String number1=op.next();<br />
System.out.print("Please enter your operand + or * or / :&#92;n");<br />
String sign=op.next();<br />
System.out.print("Please enter scond number :&#92;n");<br />
String number2=op.next();<br />
if( sign.equals("+") ){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
int o=sumNumbers( number1i , number2i );<br />
String oo=o+"";<br />
double od=Double.parseDouble(oo);<br />
outP(od);<br />
}else if(sign.equals("*")){<br />
double number1d=Double.parseDouble(number1);<br />
double number2d=Double.parseDouble(number2);<br />
double o=multiNumbers( number1d , number2d );<br />
outP(o);<br />
}else if(sign.equals("/")){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
double o=divNumbers( number1i , number2i );<br />
outP(o);<br />
}<br />
outP();<br />
} // end main Method<br />
<br />
// هذه الطريقة تأخدذ قيمة كسرية ولا ترجع بأى قيمة وإنما تطبع القيمة على الشاشة<br />
public static void outP(double input){<br />
System.out.print(input);<br />
} // end outP Method<br />
<br />
// هذه الطريقة لا تأخذ قيم ولا ترجع أيضاً أى قيم<br />
public static void outP(){<br />
System.out.print("&#92;n End Of Program");<br />
} // end outP Method<br />
<br />
// هذه الطريقة تقوم بجمع عددين وتعود بقيمة صحيحة<br />
private static int sumNumbers( int num1 , int num2 ){<br />
int out = num1 + num2 ;<br />
return out;<br />
} // end sumNumbers Method<br />
<br />
// هذه الطريقة تقوم بضرب عددين صحيحين وتعود بقيمة صحيحة أيضا<br />
private static double multiNumbers(double num1, double num2){<br />
double out = num1*num2;<br />
return out;<br />
} // end multiNumbers Method<br />
<br />
// هذه الطريقة تقوم بقسمة عددين صحيحين وتعود بقيمة كسرية<br />
private static double divNumbers(int num1, int num2){<br />
double out = num1/num2;<br />
return out;<br />
} // end divNumbers Method<br />
} // end class</code></div></div><span style="font-size: 6pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">والسلام عليكم ورحمة الله وبركاتة</span></span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس الخامس عشر - أوامر التحكّم - التكرار]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6526</link>
			<pubDate>Fri, 19 Oct 2012 08:40:45 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6526</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">اليوم نتابع الحديث عن اوامر التحكم المهمة في البرمجة. و حديثنا اليوم سيكون عن التكرار Loops. فأنت تحتاج في بعض الأحيان أن تقوم بتكرار مجموعة من الأوامر المتتالية اكثر من مرة.</span><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: red;" class="mycode_color">مقدّمة:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">لنفترض أننا نرغب في طباعة الجملة "I am a muslim" أربع مرات. طبعاً ستقولون أنه يمكننا أن نكتب البرنامج التالي و سيقوم بالمطلوب:</span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">فعلاً هذا صحيح، البرنامج يكتب الجملة 4 مرات، و لكن لاحظ معي البرنامج مرة أخرى، ستجد أننا قمنا بكتابة الأمر <img src="https://vb4arb.com/vb/uploaded/18_01350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_01350635952.gif]" class="mycode_img" /> أربع مرات. و هذا قد يكون حلاً مناسباً لأن عدد مرات التكرار كان 4، و لكن لنتصور أننا نريد أن نطبع الجملة 100 مرة أو ربما 1000 مرة. أو ربما نرغب في تكرارها عدداً من المرات يعتمد على تحقيق شرط معين. بالطبع لابد لنا عندها أن نستخدم أدوات التحكم التي تقوم بتكرار الأوامر. و توفّر لك لغة جافا ثلاث طرق لتكرار الأوامر. سنتعرّف عليها فيما يلي :-)</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">for loop:</span></span></div>
<br />
<span style="font-size: 4pt;" class="mycode_size">نستخدم هذا النوع من التكرار حين تكون عدد مرات التكرار محددة و معروفة. مثلاً. أي أنني أعرف مسبقاً عدد المرات التي سأقوم بتكرار الأوامر على عددها. في الحالة التي كانت في المقدّمة. نعرف أن عدد مرات التكرار كان 4.<br />
<br />
يكتب كود الـ for loop على هذا الشكل:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>for( initialization ; condition ; increment) {<br />
Statement 1;<br />
..<br />
}</code></div></div><span style="font-size: 4pt;" class="mycode_size">لاحظ أن كل ما هو أحمر، لابد من كتابته بنفس الشكل و الطريقة، و الآن لنفسّر الألغاز الثلاثة الموجودة في السطر الأول و التي تفصل بينها فواصل منقوطة (و ليست فواصل عادية):</span><br />
<span style="color: seagreen;" class="mycode_color"><span style="font-size: 5pt;" class="mycode_size">initialization:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">نضع في هذا الجزء متغير، و نعطيه القيمة المبدئية التي يبدأ منها التكرار. و سنرى بعد قليل كيف يفيدنا هذا. ويمكنك أن تنشئ متغيراً جديداً و تعطيه القيمة المبدئية</span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">condition:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">هنا نضع الشرط الذي نتوقّف عن العد عنده. إن تحقق الشرط في هذه الجملة، يعني أن التكرار سوف يتوقّف.</span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">increment:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">هنا نضع جملة الزيادة (أو النقصان) و نعني بذلك، الرقم الذي نزيد المتغير الذي عرّفناه في قسم initialization.<br />
<br />
ثم تلاحظ أن جملة for لها قوسا مجموعة يحصران بينهما مجموعة الأوامر المراد تكرارها.<br />
<br />
لنحاول تطبيق ذلك على مثال عملي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_11350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_11350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: red;" class="mycode_color">كيف تعمل جملة for في المثال السابق؟</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">اتبع الخطوات حتى تعرف كيف تعمل جملة for:<br />
<br />
أول ما يصل البرنامج لأمر for يقوم بادئ ذي بدء بتنفيذ الجملة التالية:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_21350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_21350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">حيث يقوم بحجز مساحة للمتغير (i) و يعطيه القيمة (0).<br />
<br />
يتحقق من الشرط الموجود في هذه الجملة:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_31350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_31350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إذا أرجع الشرط قيمة (true) أي أنه بلغة البشر كان صحيحاً فسينفّذ الخطوة رقم 3. أما إذا أرجع القيمة false، أي أن الجملة كانت خاطئة فسيقفز حتى الخطوة 5.<br />
<br />
سينفذ الأوامر المحصورة بين قوسي المجموعة بالترتيب حتى يصل إلى القوس الذي يغلق جملة for، و في حالتنا سيقوم بتنفيذ أمر الطابعة. هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_41350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_41350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">سيعود التنفيذ إلى سطر جملة for الأول مرة أخرى، و هذه المرة، سيقوم بتنفيذ الجزء الثالث من جملة for و هو:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_51350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_51350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">حيث سيقوم بزيادة قيمة المتغير (i) -في هذه الحالة بواحد- أي أنه ستصبح قيمة (i) الجديدة هي (1) بعد أن كانت صفراً. ثم سيعود لتنفيذ الخطوة 2 مرة أخرى.<br />
<br />
إذا وصلت إلى هذه الخطوة معنى ذلك أن الشرط في الخطوة 2 لم يتحقق، و أعاد لي القيمة false عندها، سنخرج من جملة for، ونقوم بالبدء في تنفيذ الأوامر التي تليها، و في حالتنا الأمر الذي يطبع كلمة Hala هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_61350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_61350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">أرجو أن تكون الخطوات قد أوضحت جملة for بشكل تام :-)</span></span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: red;" class="mycode_color">نقطة توقّف..</span></span><br />
<span style="color: blue;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">من الممكن الاستغناء عن أقواس المجموعة في جملة for إذا كان الأمر المراد تكراره واحداً فقط، و لكن من الأفضل أن يتم التعوّد على وضع الأقواس، حتى يصبح برنامجك أوضح عند قراءته.<br />
يمكنك تجربة أن تطبع المتغير (i) مع الجملة. و حاول بناءً على نفس المنهاج أن تطبع جدول الضرب.<br />
المتغير (i) سيكون مجاله فقط في داخل الـ for ولن يمكن استخدامه خارجها، إلا مع إشهاره من جديد.<br />
يمكن عمل جملة for داخل جملة for أخرى، و سيتم تنفيذ جملة for الداخلية كل مرة من البداية مع كل تنفيذ لجملة for الخارجية.<br />
من الممكن أن ننقص قيمة المتغير i في جزء الـ Increment. ليتم العد تنازلياً إذا بدأنا من قيمة كبيرة للـ (i).</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">while loop:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">في هذا النوع من التكرار في الجافا، يتم تكرار مجموعة الأوامر بناءً على تحقق شرط معيّن. وهذا هو الشكل العام لجملة while:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>while( condition ) {<br />
Statement 1;<br />
Statement 2;<br />
..<br />
}</code></div></div><span style="font-size: 4pt;" class="mycode_size">فتحقق الشرط الموجود في ما بين القوسين بعد كلمة while (يعني تكون قيمته المنطقية true) يعني أنه سيتم تنفيذ <span style="color: blue;" class="mycode_color">Statement </span><span style="color: blue;" class="mycode_color">1 </span>و <span style="color: blue;" class="mycode_color">Statement </span><span style="color: blue;" class="mycode_color">2 </span>و هكذا. لنفترض أننا نريد أن نكتب برنامجاً يقوم بعرض مجموع الأرقام المتتالية حتى رقم محدد، لننظر للبرنامج التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_81350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_81350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">لاحظ في المثال، في البداية قمنا باشهار ثلاثة متغيرات: المتغير (i) ووضعنا فيه القيمة صفر، و المتغير (max) ووضعنا فيه القيمة 4،و المتغير sum و أعطيناه القيمة صفر.<br />
<br />
ثم بدأنا نكتب جملة while، ووضعنا في مكان الـ condition الجملة المنطقية (i&lt;=max), في هذه الجملة، نقارن قيمة المتغير (i) بقيمة (max). فإذا كانت فعلاً أصغر منها أو تساويها فإن الجملة المنطقية ستكون صحيحة true و سيتم الدخول إلى جملة while و تنفيذ السطرين التاليين:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_71350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_71350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: green;" class="mycode_color">do ..while loop:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">جملة do..while هي نفسها جملة while و لكن يتم تنفيذ الأوامر قبل التحقق من الشرط. بينما في جملة while يتم التحقق من الشرط، ثم التنفيذ. و هكذا فإن الأوامر في داخل do..while سوف يتم تنفيذهم على الأقل مرة واحدة.<br />
<br />
تكتب جملة do..while هكذا:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>do {<br />
Statement 1;<br />
Statement 2;<br />
..<br />
} while( condition )</code></div></div><span style="font-size: 4pt;" class="mycode_size">يمكنك تطبيق الأمثلة في الجمل السابقة على هذه الجملة.<br />
<br />
وهكذا نكون قد غطينا أوامر التكرار في لغة الجافا بأنواعها الثلاثة. أرجو أن يكون الدرس واضحاً :-)</span><br />
<br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">تحياتي<br />
Tibo</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">اليوم نتابع الحديث عن اوامر التحكم المهمة في البرمجة. و حديثنا اليوم سيكون عن التكرار Loops. فأنت تحتاج في بعض الأحيان أن تقوم بتكرار مجموعة من الأوامر المتتالية اكثر من مرة.</span><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: red;" class="mycode_color">مقدّمة:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">لنفترض أننا نرغب في طباعة الجملة "I am a muslim" أربع مرات. طبعاً ستقولون أنه يمكننا أن نكتب البرنامج التالي و سيقوم بالمطلوب:</span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">فعلاً هذا صحيح، البرنامج يكتب الجملة 4 مرات، و لكن لاحظ معي البرنامج مرة أخرى، ستجد أننا قمنا بكتابة الأمر <img src="https://vb4arb.com/vb/uploaded/18_01350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_01350635952.gif]" class="mycode_img" /> أربع مرات. و هذا قد يكون حلاً مناسباً لأن عدد مرات التكرار كان 4، و لكن لنتصور أننا نريد أن نطبع الجملة 100 مرة أو ربما 1000 مرة. أو ربما نرغب في تكرارها عدداً من المرات يعتمد على تحقيق شرط معين. بالطبع لابد لنا عندها أن نستخدم أدوات التحكم التي تقوم بتكرار الأوامر. و توفّر لك لغة جافا ثلاث طرق لتكرار الأوامر. سنتعرّف عليها فيما يلي :-)</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">for loop:</span></span></div>
<br />
<span style="font-size: 4pt;" class="mycode_size">نستخدم هذا النوع من التكرار حين تكون عدد مرات التكرار محددة و معروفة. مثلاً. أي أنني أعرف مسبقاً عدد المرات التي سأقوم بتكرار الأوامر على عددها. في الحالة التي كانت في المقدّمة. نعرف أن عدد مرات التكرار كان 4.<br />
<br />
يكتب كود الـ for loop على هذا الشكل:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>for( initialization ; condition ; increment) {<br />
Statement 1;<br />
..<br />
}</code></div></div><span style="font-size: 4pt;" class="mycode_size">لاحظ أن كل ما هو أحمر، لابد من كتابته بنفس الشكل و الطريقة، و الآن لنفسّر الألغاز الثلاثة الموجودة في السطر الأول و التي تفصل بينها فواصل منقوطة (و ليست فواصل عادية):</span><br />
<span style="color: seagreen;" class="mycode_color"><span style="font-size: 5pt;" class="mycode_size">initialization:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">نضع في هذا الجزء متغير، و نعطيه القيمة المبدئية التي يبدأ منها التكرار. و سنرى بعد قليل كيف يفيدنا هذا. ويمكنك أن تنشئ متغيراً جديداً و تعطيه القيمة المبدئية</span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">condition:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">هنا نضع الشرط الذي نتوقّف عن العد عنده. إن تحقق الشرط في هذه الجملة، يعني أن التكرار سوف يتوقّف.</span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">increment:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">هنا نضع جملة الزيادة (أو النقصان) و نعني بذلك، الرقم الذي نزيد المتغير الذي عرّفناه في قسم initialization.<br />
<br />
ثم تلاحظ أن جملة for لها قوسا مجموعة يحصران بينهما مجموعة الأوامر المراد تكرارها.<br />
<br />
لنحاول تطبيق ذلك على مثال عملي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_11350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_11350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: red;" class="mycode_color">كيف تعمل جملة for في المثال السابق؟</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">اتبع الخطوات حتى تعرف كيف تعمل جملة for:<br />
<br />
أول ما يصل البرنامج لأمر for يقوم بادئ ذي بدء بتنفيذ الجملة التالية:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_21350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_21350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">حيث يقوم بحجز مساحة للمتغير (i) و يعطيه القيمة (0).<br />
<br />
يتحقق من الشرط الموجود في هذه الجملة:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_31350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_31350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إذا أرجع الشرط قيمة (true) أي أنه بلغة البشر كان صحيحاً فسينفّذ الخطوة رقم 3. أما إذا أرجع القيمة false، أي أن الجملة كانت خاطئة فسيقفز حتى الخطوة 5.<br />
<br />
سينفذ الأوامر المحصورة بين قوسي المجموعة بالترتيب حتى يصل إلى القوس الذي يغلق جملة for، و في حالتنا سيقوم بتنفيذ أمر الطابعة. هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_41350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_41350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">سيعود التنفيذ إلى سطر جملة for الأول مرة أخرى، و هذه المرة، سيقوم بتنفيذ الجزء الثالث من جملة for و هو:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_51350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_51350635952.gif]" class="mycode_img" /><br />
<span style="font-size: 4pt;" class="mycode_size">حيث سيقوم بزيادة قيمة المتغير (i) -في هذه الحالة بواحد- أي أنه ستصبح قيمة (i) الجديدة هي (1) بعد أن كانت صفراً. ثم سيعود لتنفيذ الخطوة 2 مرة أخرى.<br />
<br />
إذا وصلت إلى هذه الخطوة معنى ذلك أن الشرط في الخطوة 2 لم يتحقق، و أعاد لي القيمة false عندها، سنخرج من جملة for، ونقوم بالبدء في تنفيذ الأوامر التي تليها، و في حالتنا الأمر الذي يطبع كلمة Hala هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_61350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_61350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">أرجو أن تكون الخطوات قد أوضحت جملة for بشكل تام :-)</span></span><br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: red;" class="mycode_color">نقطة توقّف..</span></span><br />
<span style="color: blue;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">من الممكن الاستغناء عن أقواس المجموعة في جملة for إذا كان الأمر المراد تكراره واحداً فقط، و لكن من الأفضل أن يتم التعوّد على وضع الأقواس، حتى يصبح برنامجك أوضح عند قراءته.<br />
يمكنك تجربة أن تطبع المتغير (i) مع الجملة. و حاول بناءً على نفس المنهاج أن تطبع جدول الضرب.<br />
المتغير (i) سيكون مجاله فقط في داخل الـ for ولن يمكن استخدامه خارجها، إلا مع إشهاره من جديد.<br />
يمكن عمل جملة for داخل جملة for أخرى، و سيتم تنفيذ جملة for الداخلية كل مرة من البداية مع كل تنفيذ لجملة for الخارجية.<br />
من الممكن أن ننقص قيمة المتغير i في جزء الـ Increment. ليتم العد تنازلياً إذا بدأنا من قيمة كبيرة للـ (i).</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: seagreen;" class="mycode_color">while loop:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">في هذا النوع من التكرار في الجافا، يتم تكرار مجموعة الأوامر بناءً على تحقق شرط معيّن. وهذا هو الشكل العام لجملة while:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>while( condition ) {<br />
Statement 1;<br />
Statement 2;<br />
..<br />
}</code></div></div><span style="font-size: 4pt;" class="mycode_size">فتحقق الشرط الموجود في ما بين القوسين بعد كلمة while (يعني تكون قيمته المنطقية true) يعني أنه سيتم تنفيذ <span style="color: blue;" class="mycode_color">Statement </span><span style="color: blue;" class="mycode_color">1 </span>و <span style="color: blue;" class="mycode_color">Statement </span><span style="color: blue;" class="mycode_color">2 </span>و هكذا. لنفترض أننا نريد أن نكتب برنامجاً يقوم بعرض مجموع الأرقام المتتالية حتى رقم محدد، لننظر للبرنامج التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_81350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_81350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">لاحظ في المثال، في البداية قمنا باشهار ثلاثة متغيرات: المتغير (i) ووضعنا فيه القيمة صفر، و المتغير (max) ووضعنا فيه القيمة 4،و المتغير sum و أعطيناه القيمة صفر.<br />
<br />
ثم بدأنا نكتب جملة while، ووضعنا في مكان الـ condition الجملة المنطقية (i&lt;=max), في هذه الجملة، نقارن قيمة المتغير (i) بقيمة (max). فإذا كانت فعلاً أصغر منها أو تساويها فإن الجملة المنطقية ستكون صحيحة true و سيتم الدخول إلى جملة while و تنفيذ السطرين التاليين:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_71350635952.gif" loading="lazy"  alt="[صورة مرفقة: 18_71350635952.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 5pt;" class="mycode_size"><span style="color: green;" class="mycode_color">do ..while loop:</span></span><br />
<span style="font-size: 4pt;" class="mycode_size">جملة do..while هي نفسها جملة while و لكن يتم تنفيذ الأوامر قبل التحقق من الشرط. بينما في جملة while يتم التحقق من الشرط، ثم التنفيذ. و هكذا فإن الأوامر في داخل do..while سوف يتم تنفيذهم على الأقل مرة واحدة.<br />
<br />
تكتب جملة do..while هكذا:</span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>do {<br />
Statement 1;<br />
Statement 2;<br />
..<br />
} while( condition )</code></div></div><span style="font-size: 4pt;" class="mycode_size">يمكنك تطبيق الأمثلة في الجمل السابقة على هذه الجملة.<br />
<br />
وهكذا نكون قد غطينا أوامر التكرار في لغة الجافا بأنواعها الثلاثة. أرجو أن يكون الدرس واضحاً :-)</span><br />
<br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">تحياتي<br />
Tibo</span></span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس الرابع عشر - أوامر التحكّم - الجمل الشرطية]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6525</link>
			<pubDate>Fri, 19 Oct 2012 08:38:25 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6525</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 7pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته </span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">درسنا اليوم من الدروس المهمّة جداً. ليس في الجافا فقط بل في البرمجة بشكل عام. فنحن سنتحدّث اليوم عن بعض الأساليب البرمجية باستخدام الجمل الشرطية، و كيفية تطبيقها في الجافا. و هذا الدرس مهم جدًا. لأنه يمهّد الأرض لك كمبرمج، و يفتح المجال أمامنا في كتابة الوظائف في الدروس القادمة إن شاء الله.</span><br />
<br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>If Statement:</code></div></div><span style="font-size: 4pt;" class="mycode_size">لنتصوّر أننا نكتب برنامجاً صغيراً جداً. يخزّن رقماً في متغير، ثم يقارن هذا المتغير بالرقم عشرة، فإذا كان المتغير أصغر نعرض على الشاشة جملة معينة. و إذا كان أقل من عشرة، سنعرض على الشاشة جملة أخرى.<br />
<br />
لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_01350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إن هذا الشكل يمثل حالة اتخاذ قرار. لو نظرت للشكل المعيّن في وسط الصورة ستجد أن لدينا فيه سؤالاً له جواباً من اثنين إما أن يكون نعم (صح)، أو لا (خطأ). و في الشكل السابق، كان السؤال عن قيمة رقم محدد (هل قيمة الرقم أكبر من 10؟) و هذا هو السؤال. فإذا كانت الإجابة نعم فإننا سنفعل شيئاً. و ننفذ ما في الدائرة الخضراء على اليمين، أما إذا كانت الإجابة لا، فسنقوم بفعل شيء آخر و تنفيذ ما في الدائرة الوردية على اليسار.<br />
<br />
و لتطبيق ذلك في البرمجة، لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_11350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_11350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">حيث نبدأ بالكلمة (if) و بعدها نفتح قوسين دائريين نضع في داخلها شرطاً تكون قيمته إما true أو false. بعدها نفتح قوس مجموعة نضع في داخله ما نريد تنفيذه في حال كانت الجملة الشرطية صحيحة (true). و هذا ما نسميه (جملة إذا) أو (If Statement). و هي أول نوع من الجمل الشرطية.<br />
<br />
و الآن لنتأمّل معاً الكود التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_21350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_21350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">لقد قمنا باشهار المتغيّر number و أعطيناه القيمة 5 كما في السطر 4.<br />
<br />
و الآن لننظر إلى الكود من السطر 8 إلى 12:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_31350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_31350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إننا في هذه الأسطر نقوم بتطبيق جملة إذا. بحيث نلاحظ في السطر الثامن أننا وضعنا الجملة المنطقية (الرقم أكبر من 10).فإذا كانت العبارة صحيحة فسنقوم بتنفيذ الكود في الجزء المحصور بين قوسي المجموعة الذي يلي الجملة المنطقية مباشرة. أما إذا كانت العبارة خاطئة، فسنقوم بتنفيذ الجزء الذي يلي كلمة else و المحصور أيضاً بين قوسي مجموعة.</span></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">نقطة توقّف..</div>
</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">يمكن الاستغناء عن أقواس المجموعة في حالة كانت الجملة المراد تنفيذها جملة واحدة فقط. كما في المثال نفسه. و لكن إذا أردت تنفيذ مجموعة من الجمل، فيجب أن تحصرها بين قوسي مجموعة حتى تضمن أن يتم تنفيذها حسب ما تشاء.<br />
يمكنك الاستغناء عن القسم else إذا أردت عمل شيء في حالة كان الجملة المنطقية صحيحة، و لا ترغب بعمل شيء إذا كانت الجملة المنطقية خاطئة.</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">اكتب البرنامج و قم بتشغيله، و حاول تغيير الشرط حسب ما ترى. جرّب أن تضع شروطاً منطقية أخرى</span><br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>Switch Statement:</code></div></div><span style="font-size: 4pt;" class="mycode_size">لنفرض أننا نريد أن نكتب برنامجاً يقوم بعدة عمليات مختلفة حسب قيمة متغير. و لنفترض أن لدينا متغيراً اسمه grade نخزّن فيه درجة الطالب. فإذا كانت الدرجة (A) نطبع كلمة (Excellent) أما إذا كانت (B) نطبع كلمة (Very Good)، أما إذا كانت &copy; نطبع كلمة (Good)، أما إذا كانت (D) نطبع كلمة (Poor) و لو كانت أي شيء آخر نطبع كلمة (You Failed).<br />
<br />
طبعاً يمكننا القيام بذلك بسلسلة من جمل if الشرطية هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_41350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_41350635820.gif]" class="mycode_img" /></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">نقطة توقّف..</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">عند المقارنة بين المتغير grade و الحرف 'A' استخدمنا بينهما علامتي يساوي لا علامة واحدة. فعلامة = الواحدة تعني أننا نريد أن نضع قيمة في هذا المتغير. و العلامتين (==) تعني أننا نقارن ما بين الموجود على طرفي العلامتين. و لنا حديث مفصّل عن الجمل المنطقية و أدواتها في ملحق منفصل ان شاء الله.</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">نسمي هذا النوع من If الشرطية: nested If أي وجود if داخل if و هكذا. و تقدّم لنا معظم لغات البرمجة و منها لغة الجافا جملة switch الشرطية. التي تسهّل كتابة البرنامج إذا كنت تعتمد فيه على عمل بعض الخطوات بحسب قيمة متغير محدد. والآن لنتعرّف على الهيكل العام لجملة switch، أثناء حل البرنامج الذي تحدّثنا عنه في المثال:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_51350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_51350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">أول ذي بدء. نلاحظ أننا قمنا بتعريف متغير من نوع char اسمه grade. ثم بدأنا جملة switch و التي تكتب هكذا: switch ثم نفتح قوسين دائريين يتضمنان مفتاح. و مفتاح جملة switch هو المتغير الذي على اساس قيمته سنعرّف الحالات cases المختلفة. المفتاح في حالتنا هو grade وقد تم تعليمه بدائرة خضراء في الشكل السابق.<br />
<br />
ثم نفتح قوس مجموعة. و نلاحظ أن القومس محدد بالخط الأصفر. و لابد أن يتضمن هيكل switch في داخله كل ما يتعلّق بهذه الجملة.<br />
<br />
داخل جملة switch سنقوم بتحديد القيم. و نكتبها هكذا case ثم نضع القيمة تليها نقطتان رأسيتان ( : ) بعدها نفتح قوس مجموعة نضع في داخله الجمل و الأوامر التي نريد تنفيذها إذا كانت قيمة المفتاح تساوي القيمة التي تلي case.<br />
<br />
و هكذا حتى تنتهي كل الحالات. و يمكن (اختيارياً) استخدام الحالة default في حالة لم تتساوى قيمة المفتاح مع أي من القيم المذكورة.<br />
<br />
إن جملة switch تختلف في طريقة تسلسل الأوامر. فبمجرّد أن يتم الدخول في أي حالة من الحالات، يتم في الواقع تنفيذ جميع الحالات التي تليها. لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_61350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_61350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">نلاحظ أنه لدينا المفتاح key و أننا قمنا بتحديد القيم value1 و value2 و.. هكذا.<br />
<br />
و الآن لنتابع السيناريو. لنفترض أن قيمة key كانت تساوي فعلياً value2. في الواقع سيتم تنفيذ statement2. و من ثم statement3 و من ثم statement4.<br />
<br />
أما إذا ساوت قيمة Key الـ value1 فسيتم تنفيذ statement1. و من ثم نجد كلمة break و هي تعني الخروج نهائياً من جملة switch كاملة. و هكذا لن يتم تنفيذ أي شيء آخر.<br />
<br />
إذا ساوت قيمة key الـ value3، فسيتم تنفيذ الجملة statement3 و من بعدها statement4.<br />
<br />
و هكذا فإن ترتيب الاختيارات مهم للغاية اذ يعتمد تنفيذها على هذا الترتيب. و لهذا وضعنا في المثال السابقة كلمة break في نهاية كل اختيار، حتى نضمن عدم تنفيذ أي جملة أخرى في داخل اقواس switch.</span></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">نقطة توقّف..</span></div>
</span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">يمكن أن يكون مفتاح الـ switch من نوع int أو char و لا يمكن عمل switch على نوع من الـ aggregate data types التي يقوم المبرمج بتعريفها.<br />
استخدام كلمة break بعد كل اختيار ليس اجبارياً و لا ضرورياً و يتحكّم في ذلك طبيعة الاوامر التي تريد تنفيذها و البرنامج الذي تريده.</span></span><br />
<br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: darkorange;" class="mycode_color">أرجو أن يكون الدرس واضحاً.<br />
<br />
تحياتي<br />
Tibo</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 7pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">السلام عليكم ورحمة الله وبركاته </span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">درسنا اليوم من الدروس المهمّة جداً. ليس في الجافا فقط بل في البرمجة بشكل عام. فنحن سنتحدّث اليوم عن بعض الأساليب البرمجية باستخدام الجمل الشرطية، و كيفية تطبيقها في الجافا. و هذا الدرس مهم جدًا. لأنه يمهّد الأرض لك كمبرمج، و يفتح المجال أمامنا في كتابة الوظائف في الدروس القادمة إن شاء الله.</span><br />
<br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>If Statement:</code></div></div><span style="font-size: 4pt;" class="mycode_size">لنتصوّر أننا نكتب برنامجاً صغيراً جداً. يخزّن رقماً في متغير، ثم يقارن هذا المتغير بالرقم عشرة، فإذا كان المتغير أصغر نعرض على الشاشة جملة معينة. و إذا كان أقل من عشرة، سنعرض على الشاشة جملة أخرى.<br />
<br />
لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_01350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إن هذا الشكل يمثل حالة اتخاذ قرار. لو نظرت للشكل المعيّن في وسط الصورة ستجد أن لدينا فيه سؤالاً له جواباً من اثنين إما أن يكون نعم (صح)، أو لا (خطأ). و في الشكل السابق، كان السؤال عن قيمة رقم محدد (هل قيمة الرقم أكبر من 10؟) و هذا هو السؤال. فإذا كانت الإجابة نعم فإننا سنفعل شيئاً. و ننفذ ما في الدائرة الخضراء على اليمين، أما إذا كانت الإجابة لا، فسنقوم بفعل شيء آخر و تنفيذ ما في الدائرة الوردية على اليسار.<br />
<br />
و لتطبيق ذلك في البرمجة، لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_11350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_11350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">حيث نبدأ بالكلمة (if) و بعدها نفتح قوسين دائريين نضع في داخلها شرطاً تكون قيمته إما true أو false. بعدها نفتح قوس مجموعة نضع في داخله ما نريد تنفيذه في حال كانت الجملة الشرطية صحيحة (true). و هذا ما نسميه (جملة إذا) أو (If Statement). و هي أول نوع من الجمل الشرطية.<br />
<br />
و الآن لنتأمّل معاً الكود التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_21350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_21350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">لقد قمنا باشهار المتغيّر number و أعطيناه القيمة 5 كما في السطر 4.<br />
<br />
و الآن لننظر إلى الكود من السطر 8 إلى 12:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_31350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_31350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">إننا في هذه الأسطر نقوم بتطبيق جملة إذا. بحيث نلاحظ في السطر الثامن أننا وضعنا الجملة المنطقية (الرقم أكبر من 10).فإذا كانت العبارة صحيحة فسنقوم بتنفيذ الكود في الجزء المحصور بين قوسي المجموعة الذي يلي الجملة المنطقية مباشرة. أما إذا كانت العبارة خاطئة، فسنقوم بتنفيذ الجزء الذي يلي كلمة else و المحصور أيضاً بين قوسي مجموعة.</span></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">نقطة توقّف..</div>
</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">يمكن الاستغناء عن أقواس المجموعة في حالة كانت الجملة المراد تنفيذها جملة واحدة فقط. كما في المثال نفسه. و لكن إذا أردت تنفيذ مجموعة من الجمل، فيجب أن تحصرها بين قوسي مجموعة حتى تضمن أن يتم تنفيذها حسب ما تشاء.<br />
يمكنك الاستغناء عن القسم else إذا أردت عمل شيء في حالة كان الجملة المنطقية صحيحة، و لا ترغب بعمل شيء إذا كانت الجملة المنطقية خاطئة.</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">اكتب البرنامج و قم بتشغيله، و حاول تغيير الشرط حسب ما ترى. جرّب أن تضع شروطاً منطقية أخرى</span><br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>Switch Statement:</code></div></div><span style="font-size: 4pt;" class="mycode_size">لنفرض أننا نريد أن نكتب برنامجاً يقوم بعدة عمليات مختلفة حسب قيمة متغير. و لنفترض أن لدينا متغيراً اسمه grade نخزّن فيه درجة الطالب. فإذا كانت الدرجة (A) نطبع كلمة (Excellent) أما إذا كانت (B) نطبع كلمة (Very Good)، أما إذا كانت &copy; نطبع كلمة (Good)، أما إذا كانت (D) نطبع كلمة (Poor) و لو كانت أي شيء آخر نطبع كلمة (You Failed).<br />
<br />
طبعاً يمكننا القيام بذلك بسلسلة من جمل if الشرطية هكذا:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_41350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_41350635820.gif]" class="mycode_img" /></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">نقطة توقّف..</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">عند المقارنة بين المتغير grade و الحرف 'A' استخدمنا بينهما علامتي يساوي لا علامة واحدة. فعلامة = الواحدة تعني أننا نريد أن نضع قيمة في هذا المتغير. و العلامتين (==) تعني أننا نقارن ما بين الموجود على طرفي العلامتين. و لنا حديث مفصّل عن الجمل المنطقية و أدواتها في ملحق منفصل ان شاء الله.</span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">نسمي هذا النوع من If الشرطية: nested If أي وجود if داخل if و هكذا. و تقدّم لنا معظم لغات البرمجة و منها لغة الجافا جملة switch الشرطية. التي تسهّل كتابة البرنامج إذا كنت تعتمد فيه على عمل بعض الخطوات بحسب قيمة متغير محدد. والآن لنتعرّف على الهيكل العام لجملة switch، أثناء حل البرنامج الذي تحدّثنا عنه في المثال:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_51350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_51350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">أول ذي بدء. نلاحظ أننا قمنا بتعريف متغير من نوع char اسمه grade. ثم بدأنا جملة switch و التي تكتب هكذا: switch ثم نفتح قوسين دائريين يتضمنان مفتاح. و مفتاح جملة switch هو المتغير الذي على اساس قيمته سنعرّف الحالات cases المختلفة. المفتاح في حالتنا هو grade وقد تم تعليمه بدائرة خضراء في الشكل السابق.<br />
<br />
ثم نفتح قوس مجموعة. و نلاحظ أن القومس محدد بالخط الأصفر. و لابد أن يتضمن هيكل switch في داخله كل ما يتعلّق بهذه الجملة.<br />
<br />
داخل جملة switch سنقوم بتحديد القيم. و نكتبها هكذا case ثم نضع القيمة تليها نقطتان رأسيتان ( : ) بعدها نفتح قوس مجموعة نضع في داخله الجمل و الأوامر التي نريد تنفيذها إذا كانت قيمة المفتاح تساوي القيمة التي تلي case.<br />
<br />
و هكذا حتى تنتهي كل الحالات. و يمكن (اختيارياً) استخدام الحالة default في حالة لم تتساوى قيمة المفتاح مع أي من القيم المذكورة.<br />
<br />
إن جملة switch تختلف في طريقة تسلسل الأوامر. فبمجرّد أن يتم الدخول في أي حالة من الحالات، يتم في الواقع تنفيذ جميع الحالات التي تليها. لننظر للشكل التالي:</span><br />
<img src="https://vb4arb.com/vb/uploaded/18_61350635820.gif" loading="lazy"  alt="[صورة مرفقة: 18_61350635820.gif]" class="mycode_img" /><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">نلاحظ أنه لدينا المفتاح key و أننا قمنا بتحديد القيم value1 و value2 و.. هكذا.<br />
<br />
و الآن لنتابع السيناريو. لنفترض أن قيمة key كانت تساوي فعلياً value2. في الواقع سيتم تنفيذ statement2. و من ثم statement3 و من ثم statement4.<br />
<br />
أما إذا ساوت قيمة Key الـ value1 فسيتم تنفيذ statement1. و من ثم نجد كلمة break و هي تعني الخروج نهائياً من جملة switch كاملة. و هكذا لن يتم تنفيذ أي شيء آخر.<br />
<br />
إذا ساوت قيمة key الـ value3، فسيتم تنفيذ الجملة statement3 و من بعدها statement4.<br />
<br />
و هكذا فإن ترتيب الاختيارات مهم للغاية اذ يعتمد تنفيذها على هذا الترتيب. و لهذا وضعنا في المثال السابقة كلمة break في نهاية كل اختيار، حتى نضمن عدم تنفيذ أي جملة أخرى في داخل اقواس switch.</span></div>
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">نقطة توقّف..</span></div>
</span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">يمكن أن يكون مفتاح الـ switch من نوع int أو char و لا يمكن عمل switch على نوع من الـ aggregate data types التي يقوم المبرمج بتعريفها.<br />
استخدام كلمة break بعد كل اختيار ليس اجبارياً و لا ضرورياً و يتحكّم في ذلك طبيعة الاوامر التي تريد تنفيذها و البرنامج الذي تريده.</span></span><br />
<br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: darkorange;" class="mycode_color">أرجو أن يكون الدرس واضحاً.<br />
<br />
تحياتي<br />
Tibo</span></span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس الثالث عشر - العمليات]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6524</link>
			<pubDate>Fri, 19 Oct 2012 08:36:17 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6524</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /></div>
<span style="color: purple;" class="mycode_color"><span style="font-size: 7pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">العمليات</div>
</span></span><br />
<br />
<span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">بعض العمليات على المتغيرات :</span></div>
</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350635705.png" loading="lazy"  alt="[صورة مرفقة: 18_01350635705.png]" class="mycode_img" /></div>
<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">عمليات اخري :</div>
</span></span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350635705.png" loading="lazy"  alt="[صورة مرفقة: 18_11350635705.png]" class="mycode_img" /><br />
</div>
<br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">عمليات علي السلسلة الحروف string :</div>
</span></span><br />
<div style="text-align: center;" class="mycode_align">
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>txt1="What a very"; <br />
txt2="nice day"; <br />
txt3=txt1+txt2;</code></div></div></div>
<span style="color: darkorchid;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 6pt;" class="mycode_size">********************************</span></div>
</span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 5pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">تقبلوا تحياتي اخوكم تيبو</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /></div>
<span style="color: purple;" class="mycode_color"><span style="font-size: 7pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">العمليات</div>
</span></span><br />
<br />
<span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">بعض العمليات على المتغيرات :</span></div>
</span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_01350635705.png" loading="lazy"  alt="[صورة مرفقة: 18_01350635705.png]" class="mycode_img" /></div>
<br />
<br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">عمليات اخري :</div>
</span></span><br />
<br />
<div style="text-align: center;" class="mycode_align"><img src="https://vb4arb.com/vb/uploaded/18_11350635705.png" loading="lazy"  alt="[صورة مرفقة: 18_11350635705.png]" class="mycode_img" /><br />
</div>
<br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">عمليات علي السلسلة الحروف string :</div>
</span></span><br />
<div style="text-align: center;" class="mycode_align">
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>txt1="What a very"; <br />
txt2="nice day"; <br />
txt3=txt1+txt2;</code></div></div></div>
<span style="color: darkorchid;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 6pt;" class="mycode_size">********************************</span></div>
</span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 5pt;" class="mycode_size"><span style="color: blue;" class="mycode_color">تقبلوا تحياتي اخوكم تيبو</span></span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[درس الثاني عشر - البرمجة غرضية التوجه oop]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6523</link>
			<pubDate>Fri, 19 Oct 2012 08:34:02 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6523</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">البرمجة غرضية التوجه OOP</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: 5pt;" class="mycode_size"><span style="color: blue;" class="mycode_color"><div style="text-align: center;" class="mycode_align">مدخل إلى البرمجة الشيئية أو الكائنية التوجّه Object Oriented Programming</div>
</span></span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align"><span style="color: green;" class="mycode_color">خلال الأسطر القليلة التالية، سنلقي الضوء على مفهوم البرمجة الكائنية أو الشيئة Object Oriented Programming وهي ما يطلق عليه اختصاراً</span></div>
</span><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align">OOP</div>
</span></span></span><div style="text-align: center;" class="mycode_align"><span style="color: green;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">ماهيتها ومميزاتها</div>
</span></span></div>
<span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">فكّر بالكائنات Think about Objects:</span></div>
</span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">ستتعرف في هذا الجزء على أهم المصطلحات المستخدمة في الـOOP كما ستفهم فكرة الـOOP إن شاء الله!<br />
لو نظرنا حولنا في عالمنا الحقيقي لوجدنا جميع ما يحيط بنا عبارة عن "كائنات Objects": الناس، الحيوانات، النباتات، السيارات، الطائرات، البنايات، وحتى الكمبيوترات وغيرها. هذا هو معنى كلمة "كائن Object"، ومن الممكن أن نطلق نفس المصطلح على أي ممثل لأي فئة، فنطلقه على الفراولة لأنها تمثل أحد الفواكة، أو نطلقه مثلاً على الطاووس لأنه يمثل أحد الطيور... وهكذا.<br />
ويمكننا تصنيف الكائنات إلى صنفين:</span><br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: red;" class="mycode_color">كائنات نشطة (حية) Animate Objects</span>: وهي التي نحس فيها فنجد لها حركة ونشاط.<br />
<span style="color: red;" class="mycode_color">كائنات غير نشطة (غير حية) Inanimate Objects</span>: هي التي لا نلاحظ لها نشاط أو حركة أو وقع أينما وجدت.<br />
وجميع الكائنات بصنفيها لها:<br />
<br />
<span style="color: red;" class="mycode_color">خصائص Attribute مثل</span>: الحجم، اللون، الوزن، الشكل...ألخ.<br />
<span style="color: red;" class="mycode_color">سلوك Behavior فمثلاً</span>: الطفل (كائن) يبكي، وينام، ويمشي، ويأكل (سلوكيات).<br />
الإنسان وخصوصاً المبرمج يتعلم عن الكائنات بمعرفة خصائصها، وملاحظة (تجربة) سلوكها، فمن الممكن أن يكون لكائنات مختلفة نفس الخصائص وسلوك متقارب.<br />
<br />
البرمجة الشيئية Object Oriented Programming تقوم بنمذجة Modeling كائنات العالم الحقيقي في برنامج نظير software counterpart. هذا البرنامج يحمل إيجابيات العلاقات بين الفئات classes relationships حيث أن أي كائن من أي فئة يحمل جيمع مميزات وصفات characteristics هذه الفئة أو بالأحرى يرثها لأنه ممثل لفئته. كما أن الفئات الجديدة -تسمى فئة فرعية subclass- ترث صفات الفئات التي أُنتجت وتكونت منها -تسمى الفئة الأم superclass- كما يرث الطفل جينات أبويه. وهذه الفئة الجديدة والتي تعتبر subclass، من الممكن أن تكون superclass لفئات جديدة أخرى ينشئها المبرمج.<br />
<br />
الـOOP كذلك تقوم باحتواء البيانات (Data (attributes والطرق (Methods (behavior في حزمة package هي ما نطلق عليه "كائنات Objects"؛ حيث أن بيانات وطرق أي كائن ترتبط ببعضها ارتباط وثيق. هذا الكائن يتميّز بخاصية التخفي Information Hiding نعني بالتخفي هنا أنه بإمكان الكائنات الاتصال والتعامل مع بعضها البعض مع عدم معرفة أحدها كيف تكوّن الآخر! أي أن تفاصيل التكوين هي المخفيّة حتى عن الكائنات نفسها؛ فمن المؤكد أننا نعرف كيف نقود السيارة بكفاءة عالية دون معرفة تفاصيل هندستها. تسمى هذه الخاصية في البرمجة بـAbstraction أي تجريد البيانات.<br />
<br />
برامج الجافا جميعها قائمة على برمجة المبرمج لمجموعة فئات خاصة به تسمى user-defined classes باستخدام الفئات والمميزات التي توفرها اللغة ومن ثم استخدام هذه الفئات جميعها أو بعضها في برامجه <br />
حيث أن كل فئة تحتوي على بيانات data ومجموعة دوال functions تقوم بتشكيل هذه البيانات، تسمى البيانات في فئات الجافا بـ: instance variable أو data member. ويطلق على الدوال اسم الطرق methods. فأي طلب لأي فئة معرّفة في اللغة كأنواع البيانات مثل int يسمى "متغير variable"، بينما طلب أي فئة من الفئات التي عرّفها المبرمج user-defined يسمى "كائن object".</span><br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">البرمجة الشيئية أو الكائنية Object Oriented Programming:</span></span><br />
عند حديثنا عن البرمجة الشيئية، نجمل الحديث في كلمتين: الوراثة وتعدد الأشكال <span style="color: red;" class="mycode_color">Inheritance </span>&amp; <span style="color: red;" class="mycode_color">Polymorphism</span>، وهما من التقنيات الفعّالة للتعامل مع البرمجيات المعقدّة:<br />
<span style="font-size: 4pt;" class="mycode_size">فالوراثة <span style="color: red;" class="mycode_color">inheritance </span>هي شكل للبرامج software المعدّة للاستعمال مع الفئات classes الحديثة والتي أنشئت من فئات موجودة مسبقاً وأخذت عنها خصائصها وسلوكها وأضافت إليها القدرات التي نحتاج إليها في هذه الفئة الجديدة. الوراثة ماذا تعني عملياً؟! تعني بالضبط ما الذي تم وراثته و كيف يمكن التعديل عليه وما الذي لا يمكن وراثته -يتضح ذلك بالأمثلة-. هذه الخاصية توفر الكثير من الوقت للمبرمج وتقطع عنه أشواطاً في تطوير برنامجه.<br />
وتعدد الأشكال <span style="color: red;" class="mycode_color">polymorphism </span>يسمح لنا بكتابة برنامجنا في صورة قابلة لتغيير واسع النطاق؛ سواء كان التغيير لفئات موجودة مسبقاً أو تغيير مستقبلي لإنتاج برامج جديدة. هذه الخاصية تسهل علينا توسيع قدرات نظامنا.<br />
وكما ذكرنا في الأعلى أن الفئات الجديدة -تسمى فئة فرعية subclass- ترث صفات الفئات التي أُنتجت وتكونت منها -تسمى الفئة الأم superclass- كما يرث الطفل جينات أبويه. وهذه الفئة الجديدة والتي تعتبر subclass، من الممكن أن تكون superclass لفئات جديدة أخرى ينشئها المبرمج. وهكذا تمتد لدينا سلسلة من الوراثة بين الفئات extends، يحكمها قانون "الوراثة المفردة Single Inheritance" حيث ينص هذا القانون على:<br />
تنشأ أي فئة فرعية من فئة أم واحدة، فالجافا لا تدعم التوارث المتعدد multiple inheritance كالسي++ ولكنها تدعم مفهوم الواجهات Interfaces، فنظام الواجهات يساعد الجافا على تحقيق فائدة التوارث المتعدد مع عدم وجود الأخطاء المترابطة الناتجة عن هذا التوارث المتعدد!<br />
<br />
تذكر أن أي كائن ينتمي إلى فئة فرعية فهو ينتمي إلى الفئة الأم لهذه الفئة الفرعية ويحمل خصائصهما وسلوكهما.<br />
<br />
وبعد هذه المقدمة وهذا التوصيف لعالم الـOOP نلاحظ أن جُلّ التركيز في هذا النوع من البرمجة يقع على الـفئات Classes، فالمبرمج يستخدم الفئات المبنية مسبقاً في اللغة مع الفئات التي يبنيها هو كي ينتج برنامجاً بالجافا، ربما يفسر هذا الاسم OOP <br />
<br />
[SIZE=6]<span style="color: purple;" class="mycode_color">بهذا يكون درسنا قد انتهى، أرجو أن يكون واضحاً.. والسلام عليكم.</span></span>[/SIZE]</div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: purple;" class="mycode_color">البرمجة غرضية التوجه OOP</span></span></div>
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: 5pt;" class="mycode_size"><span style="color: blue;" class="mycode_color"><div style="text-align: center;" class="mycode_align">مدخل إلى البرمجة الشيئية أو الكائنية التوجّه Object Oriented Programming</div>
</span></span></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align"><span style="color: green;" class="mycode_color">خلال الأسطر القليلة التالية، سنلقي الضوء على مفهوم البرمجة الكائنية أو الشيئة Object Oriented Programming وهي ما يطلق عليه اختصاراً</span></div>
</span><span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align">OOP</div>
</span></span></span><div style="text-align: center;" class="mycode_align"><span style="color: green;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">ماهيتها ومميزاتها</div>
</span></span></div>
<span style="color: red;" class="mycode_color"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">فكّر بالكائنات Think about Objects:</span></div>
</span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">ستتعرف في هذا الجزء على أهم المصطلحات المستخدمة في الـOOP كما ستفهم فكرة الـOOP إن شاء الله!<br />
لو نظرنا حولنا في عالمنا الحقيقي لوجدنا جميع ما يحيط بنا عبارة عن "كائنات Objects": الناس، الحيوانات، النباتات، السيارات، الطائرات، البنايات، وحتى الكمبيوترات وغيرها. هذا هو معنى كلمة "كائن Object"، ومن الممكن أن نطلق نفس المصطلح على أي ممثل لأي فئة، فنطلقه على الفراولة لأنها تمثل أحد الفواكة، أو نطلقه مثلاً على الطاووس لأنه يمثل أحد الطيور... وهكذا.<br />
ويمكننا تصنيف الكائنات إلى صنفين:</span><br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: red;" class="mycode_color">كائنات نشطة (حية) Animate Objects</span>: وهي التي نحس فيها فنجد لها حركة ونشاط.<br />
<span style="color: red;" class="mycode_color">كائنات غير نشطة (غير حية) Inanimate Objects</span>: هي التي لا نلاحظ لها نشاط أو حركة أو وقع أينما وجدت.<br />
وجميع الكائنات بصنفيها لها:<br />
<br />
<span style="color: red;" class="mycode_color">خصائص Attribute مثل</span>: الحجم، اللون، الوزن، الشكل...ألخ.<br />
<span style="color: red;" class="mycode_color">سلوك Behavior فمثلاً</span>: الطفل (كائن) يبكي، وينام، ويمشي، ويأكل (سلوكيات).<br />
الإنسان وخصوصاً المبرمج يتعلم عن الكائنات بمعرفة خصائصها، وملاحظة (تجربة) سلوكها، فمن الممكن أن يكون لكائنات مختلفة نفس الخصائص وسلوك متقارب.<br />
<br />
البرمجة الشيئية Object Oriented Programming تقوم بنمذجة Modeling كائنات العالم الحقيقي في برنامج نظير software counterpart. هذا البرنامج يحمل إيجابيات العلاقات بين الفئات classes relationships حيث أن أي كائن من أي فئة يحمل جيمع مميزات وصفات characteristics هذه الفئة أو بالأحرى يرثها لأنه ممثل لفئته. كما أن الفئات الجديدة -تسمى فئة فرعية subclass- ترث صفات الفئات التي أُنتجت وتكونت منها -تسمى الفئة الأم superclass- كما يرث الطفل جينات أبويه. وهذه الفئة الجديدة والتي تعتبر subclass، من الممكن أن تكون superclass لفئات جديدة أخرى ينشئها المبرمج.<br />
<br />
الـOOP كذلك تقوم باحتواء البيانات (Data (attributes والطرق (Methods (behavior في حزمة package هي ما نطلق عليه "كائنات Objects"؛ حيث أن بيانات وطرق أي كائن ترتبط ببعضها ارتباط وثيق. هذا الكائن يتميّز بخاصية التخفي Information Hiding نعني بالتخفي هنا أنه بإمكان الكائنات الاتصال والتعامل مع بعضها البعض مع عدم معرفة أحدها كيف تكوّن الآخر! أي أن تفاصيل التكوين هي المخفيّة حتى عن الكائنات نفسها؛ فمن المؤكد أننا نعرف كيف نقود السيارة بكفاءة عالية دون معرفة تفاصيل هندستها. تسمى هذه الخاصية في البرمجة بـAbstraction أي تجريد البيانات.<br />
<br />
برامج الجافا جميعها قائمة على برمجة المبرمج لمجموعة فئات خاصة به تسمى user-defined classes باستخدام الفئات والمميزات التي توفرها اللغة ومن ثم استخدام هذه الفئات جميعها أو بعضها في برامجه <br />
حيث أن كل فئة تحتوي على بيانات data ومجموعة دوال functions تقوم بتشكيل هذه البيانات، تسمى البيانات في فئات الجافا بـ: instance variable أو data member. ويطلق على الدوال اسم الطرق methods. فأي طلب لأي فئة معرّفة في اللغة كأنواع البيانات مثل int يسمى "متغير variable"، بينما طلب أي فئة من الفئات التي عرّفها المبرمج user-defined يسمى "كائن object".</span><br />
<span style="color: red;" class="mycode_color"><span style="font-size: 4pt;" class="mycode_size">البرمجة الشيئية أو الكائنية Object Oriented Programming:</span></span><br />
عند حديثنا عن البرمجة الشيئية، نجمل الحديث في كلمتين: الوراثة وتعدد الأشكال <span style="color: red;" class="mycode_color">Inheritance </span>&amp; <span style="color: red;" class="mycode_color">Polymorphism</span>، وهما من التقنيات الفعّالة للتعامل مع البرمجيات المعقدّة:<br />
<span style="font-size: 4pt;" class="mycode_size">فالوراثة <span style="color: red;" class="mycode_color">inheritance </span>هي شكل للبرامج software المعدّة للاستعمال مع الفئات classes الحديثة والتي أنشئت من فئات موجودة مسبقاً وأخذت عنها خصائصها وسلوكها وأضافت إليها القدرات التي نحتاج إليها في هذه الفئة الجديدة. الوراثة ماذا تعني عملياً؟! تعني بالضبط ما الذي تم وراثته و كيف يمكن التعديل عليه وما الذي لا يمكن وراثته -يتضح ذلك بالأمثلة-. هذه الخاصية توفر الكثير من الوقت للمبرمج وتقطع عنه أشواطاً في تطوير برنامجه.<br />
وتعدد الأشكال <span style="color: red;" class="mycode_color">polymorphism </span>يسمح لنا بكتابة برنامجنا في صورة قابلة لتغيير واسع النطاق؛ سواء كان التغيير لفئات موجودة مسبقاً أو تغيير مستقبلي لإنتاج برامج جديدة. هذه الخاصية تسهل علينا توسيع قدرات نظامنا.<br />
وكما ذكرنا في الأعلى أن الفئات الجديدة -تسمى فئة فرعية subclass- ترث صفات الفئات التي أُنتجت وتكونت منها -تسمى الفئة الأم superclass- كما يرث الطفل جينات أبويه. وهذه الفئة الجديدة والتي تعتبر subclass، من الممكن أن تكون superclass لفئات جديدة أخرى ينشئها المبرمج. وهكذا تمتد لدينا سلسلة من الوراثة بين الفئات extends، يحكمها قانون "الوراثة المفردة Single Inheritance" حيث ينص هذا القانون على:<br />
تنشأ أي فئة فرعية من فئة أم واحدة، فالجافا لا تدعم التوارث المتعدد multiple inheritance كالسي++ ولكنها تدعم مفهوم الواجهات Interfaces، فنظام الواجهات يساعد الجافا على تحقيق فائدة التوارث المتعدد مع عدم وجود الأخطاء المترابطة الناتجة عن هذا التوارث المتعدد!<br />
<br />
تذكر أن أي كائن ينتمي إلى فئة فرعية فهو ينتمي إلى الفئة الأم لهذه الفئة الفرعية ويحمل خصائصهما وسلوكهما.<br />
<br />
وبعد هذه المقدمة وهذا التوصيف لعالم الـOOP نلاحظ أن جُلّ التركيز في هذا النوع من البرمجة يقع على الـفئات Classes، فالمبرمج يستخدم الفئات المبنية مسبقاً في اللغة مع الفئات التي يبنيها هو كي ينتج برنامجاً بالجافا، ربما يفسر هذا الاسم OOP <br />
<br />
[SIZE=6]<span style="color: purple;" class="mycode_color">بهذا يكون درسنا قد انتهى، أرجو أن يكون واضحاً.. والسلام عليكم.</span></span>[/SIZE]</div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس الحادي عشر - إستدعاء حزمة الواجهة الرسومية والعمل عليها]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6522</link>
			<pubDate>Fri, 19 Oct 2012 08:33:15 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6522</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /></div>
<span style="color: purple;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size"><br />
<div style="text-align: center;" class="mycode_align">إستدعاء حزمة الواجهة الرسومية والعمل عليها</div>
</span></span><br />
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">بسم الله في هذا الدرس سوف نقوم بإستدعاء حزمة الواجهة الرسومية المدمجة داخل الحزم الإفتراضية للغة الجافا وطبعاً ذالك لتوفير عناء برمجة تلك الواجهات الرسومية على المستخدم ولكن يمكنك التعديل عليها أو إنشاء حزم خاصة بك لإستخدامها .<br />
<br />
- طبعاً داخل تلك الحزمة العديد من الأشياء كالأذرار و خانات كتابة النصوص وأذرار الإختيار المتعدد والإطارات وغيرها الكثير ما سوف نستخدمة في هذا الدرس هو صندوق الرسائل Message Box ومن يريد معرفة المذيد عن إستخدام الواجهة الرسومية من خلال الأكوا يستطيع ذلك بالرجوع لكتاب Java How To Program أو أى كتاب أخر ولكن فى الدرس القادم بإذن الله سنهيأ برنامج النت بينز وسنتعامل مع الواجهة الرسومية للغة الجافا من خلالة فسيوفر علينا جهد ووقت كبير وتحكم أكثر ده ومرونة .<br />
<br />
- لن أطيل الحديث كثيراً إليكم البرنامج :</span></span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import javax.swing.*;<br />
public class Methods{<br />
// هذه هى الطريقة الأساسية التى يعمل منها البرنامج<br />
public static void main( String args[]){<br />
String number1= JOptionPane.showInputDialog(null,"enter First number : ");<br />
String sign=JOptionPane.showInputDialog(null,"Please enter your operand + or * or / :&#92;n");<br />
String number2=JOptionPane.showInputDialog(null,"enter Scond number : ");<br />
if( sign.equals("+") ){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
int o=sumNumbers( number1i , number2i );<br />
String oo=o+"";<br />
double od=Double.parseDouble(oo);<br />
outP(od);<br />
}else if(sign.equals("*")){<br />
double number1d=Double.parseDouble(number1);<br />
double number2d=Double.parseDouble(number2);<br />
double o=multiNumbers( number1d , number2d );<br />
outP(o);<br />
}else if(sign.equals("/")){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
double o=divNumbers( number1i , number2i );<br />
outP(o);<br />
}<br />
outP();<br />
} // end main Method<br />
<br />
// هذه الطريقة تأخدذ قيمة كسرية ولا ترجع بأى قيمة وإنما تطبع القيمة على الشاشة<br />
public static void outP(double input){<br />
JOptionPane.showMessageDialog(null,"outputs = "+input);<br />
} // end outP Method<br />
<br />
// هذه الطريقة لا تأخذ قيم ولا ترجع أيضاً أى قيم<br />
public static void outP(){<br />
JOptionPane.showMessageDialog(null,"End Of Program");<br />
} // end outP Method<br />
<br />
// هذه الطريقة تقوم بجمع عددين وتعود بقيمة صحيحة<br />
private static int sumNumbers( int num1 , int num2 ){<br />
int out = num1 + num2 ;<br />
return out;<br />
} // end sumNumbers Method<br />
<br />
// هذه الطريقة تقوم بضرب عددين صحيحين وتعود بقيمة صحيحة أيضا<br />
private static double multiNumbers(double num1, double num2){<br />
double out = num1*num2;<br />
return out;<br />
} // end multiNumbers Method<br />
<br />
// هذه الطريقة تقوم بقسمة عددين صحيحين وتعود بقيمة كسرية<br />
private static double divNumbers(int num1, int num2){<br />
double out = num1/num2;<br />
return out;<br />
} // end divNumbers Method<br />
} // end class</code></div></div><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">- كما تشاهدون فى المثال قمنا بإستدعاء حزمة الواجهة الرسومية وإستخدمنها لإدخال<br />
البيانات عوضاً عن دالة System.in الموجودة فى الكلاس Scanner وذلك لإستقبال البيانات من المستخدم من خلالها عن طريق showInputDialog أو طباعة البيانات داخل<br />
صندوق الرسائل من خلال showMessaeDialog<br />
- صورة لصندوق الرسائل :</span></span><br />
<br />
<img src="https://vb4arb.com/vb/uploaded/18_01350635553.png" loading="lazy"  alt="[صورة مرفقة: 18_01350635553.png]" class="mycode_img" /><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">- طبعاً شكل الإطارات أو الأذرار سيختلف تبعاً لنظام تشغيلك الذي تعمل علية ولذلك أسميتها اللغة الحرباء </span></span><br />
<span style="color: blue;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size">بالتوفيق ** اخوكم تيبو</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<img src="https://vb4arb.com/vb/uploaded/18_01350493002.png" loading="lazy"  alt="[صورة مرفقة: 18_01350493002.png]" class="mycode_img" /></div>
<span style="color: purple;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size"><br />
<div style="text-align: center;" class="mycode_align">إستدعاء حزمة الواجهة الرسومية والعمل عليها</div>
</span></span><br />
<br />
<div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">بسم الله في هذا الدرس سوف نقوم بإستدعاء حزمة الواجهة الرسومية المدمجة داخل الحزم الإفتراضية للغة الجافا وطبعاً ذالك لتوفير عناء برمجة تلك الواجهات الرسومية على المستخدم ولكن يمكنك التعديل عليها أو إنشاء حزم خاصة بك لإستخدامها .<br />
<br />
- طبعاً داخل تلك الحزمة العديد من الأشياء كالأذرار و خانات كتابة النصوص وأذرار الإختيار المتعدد والإطارات وغيرها الكثير ما سوف نستخدمة في هذا الدرس هو صندوق الرسائل Message Box ومن يريد معرفة المذيد عن إستخدام الواجهة الرسومية من خلال الأكوا يستطيع ذلك بالرجوع لكتاب Java How To Program أو أى كتاب أخر ولكن فى الدرس القادم بإذن الله سنهيأ برنامج النت بينز وسنتعامل مع الواجهة الرسومية للغة الجافا من خلالة فسيوفر علينا جهد ووقت كبير وتحكم أكثر ده ومرونة .<br />
<br />
- لن أطيل الحديث كثيراً إليكم البرنامج :</span></span><br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import javax.swing.*;<br />
public class Methods{<br />
// هذه هى الطريقة الأساسية التى يعمل منها البرنامج<br />
public static void main( String args[]){<br />
String number1= JOptionPane.showInputDialog(null,"enter First number : ");<br />
String sign=JOptionPane.showInputDialog(null,"Please enter your operand + or * or / :&#92;n");<br />
String number2=JOptionPane.showInputDialog(null,"enter Scond number : ");<br />
if( sign.equals("+") ){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
int o=sumNumbers( number1i , number2i );<br />
String oo=o+"";<br />
double od=Double.parseDouble(oo);<br />
outP(od);<br />
}else if(sign.equals("*")){<br />
double number1d=Double.parseDouble(number1);<br />
double number2d=Double.parseDouble(number2);<br />
double o=multiNumbers( number1d , number2d );<br />
outP(o);<br />
}else if(sign.equals("/")){<br />
int number1i=Integer.parseInt(number1);<br />
int number2i=Integer.parseInt(number2);<br />
double o=divNumbers( number1i , number2i );<br />
outP(o);<br />
}<br />
outP();<br />
} // end main Method<br />
<br />
// هذه الطريقة تأخدذ قيمة كسرية ولا ترجع بأى قيمة وإنما تطبع القيمة على الشاشة<br />
public static void outP(double input){<br />
JOptionPane.showMessageDialog(null,"outputs = "+input);<br />
} // end outP Method<br />
<br />
// هذه الطريقة لا تأخذ قيم ولا ترجع أيضاً أى قيم<br />
public static void outP(){<br />
JOptionPane.showMessageDialog(null,"End Of Program");<br />
} // end outP Method<br />
<br />
// هذه الطريقة تقوم بجمع عددين وتعود بقيمة صحيحة<br />
private static int sumNumbers( int num1 , int num2 ){<br />
int out = num1 + num2 ;<br />
return out;<br />
} // end sumNumbers Method<br />
<br />
// هذه الطريقة تقوم بضرب عددين صحيحين وتعود بقيمة صحيحة أيضا<br />
private static double multiNumbers(double num1, double num2){<br />
double out = num1*num2;<br />
return out;<br />
} // end multiNumbers Method<br />
<br />
// هذه الطريقة تقوم بقسمة عددين صحيحين وتعود بقيمة كسرية<br />
private static double divNumbers(int num1, int num2){<br />
double out = num1/num2;<br />
return out;<br />
} // end divNumbers Method<br />
} // end class</code></div></div><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">- كما تشاهدون فى المثال قمنا بإستدعاء حزمة الواجهة الرسومية وإستخدمنها لإدخال<br />
البيانات عوضاً عن دالة System.in الموجودة فى الكلاس Scanner وذلك لإستقبال البيانات من المستخدم من خلالها عن طريق showInputDialog أو طباعة البيانات داخل<br />
صندوق الرسائل من خلال showMessaeDialog<br />
- صورة لصندوق الرسائل :</span></span><br />
<br />
<img src="https://vb4arb.com/vb/uploaded/18_01350635553.png" loading="lazy"  alt="[صورة مرفقة: 18_01350635553.png]" class="mycode_img" /><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size">- طبعاً شكل الإطارات أو الأذرار سيختلف تبعاً لنظام تشغيلك الذي تعمل علية ولذلك أسميتها اللغة الحرباء </span></span><br />
<span style="color: blue;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size">بالتوفيق ** اخوكم تيبو</span></span></div>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس العاشر - حزم الجافا (Java Packages)]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6521</link>
			<pubDate>Fri, 19 Oct 2012 08:32:00 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6521</guid>
			<description><![CDATA[<span style="color: #000000;" class="mycode_color"><span style="font-family: arial;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size">[b]<span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
</span></span></span></span></span><br />
<span style="color: DarkOrchid;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size">حزم الجافا (Java Packages)</span></span></div>
[/b]</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">.ماهي حزم الجافا؟<br />
.لماذا نحتاج حزم الجافا؟<br />
.كيف نستطيع انشاء حزم الجافا</span>؟</div>
<br />
<br />
<span style="text-decoration: underline;" class="mycode_u">[b]<span style="font-size: 4pt;" class="mycode_size"><span style="color: Red;" class="mycode_color"><div style="text-align: center;" class="mycode_align">ماهي حزم الجافا؟</div>
</span></span></span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">التعريف:</div>
</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">حزم الجافا هي مجموعة من الفئات المترابطة، و كل مجموعة من الفئات تنظم تحت حزمة معينة لأجل تحديد الهوية. و الحزمة تتكون من:<br />
<br />
حزم فرعية تحت الحزمة الأم.<br />
مجموعة من الفئات المتعلقة بالحزمة الأم.<br />
بعض الأمثلة: الحزمة Java تحتوي على حزم فرعية منها applet, io, alng, net, awt &amp; util و لو أخذنا الحزمة الفرعية Java.awt لحصلنا على حزمة فرعية من awt مثل image و يكون الامتداد لها Java.awt.image</span></div>
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="text-decoration: underline;" class="mycode_u"><div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="color: Red;" class="mycode_color">لماذا نحتاج حزم الجافا؟</span></span></div>
</span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">مبرمجي الجافا يعتمدون على الحزم لتكوين فئات مترابطة داخل هذه الحزم و الأسباب هي:<br />
<br />
العثور على الفئات بشكل سريع و استخدامها بالبرامج.<br />
تنحدر الفئات تحت الحزم لكي لا تتعارض اسماء الفئات مع بعضها البعض.<br />
للتحكم بالفئات بشكل كامل.</span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">مسميات الحزم و الحزم الفرعية و الفئات:</span></span> الحزمة تتكون من حزم فرعية و فئات متفرعة، لكن لا نستطيع تسمة الحزمة أو الحزم الفرعية أو احدى الفئات باسم واحد. و مثال على ذلك: الحزمة java.awt لديها حزمة فرعية بالاسم image. لكن لا نستطيع تسمية احدى الفئات بالاسم image، لأن الاسم محجوز للحزمة الفرعية و العكس صحيح.<br />
<br />
<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">كيف نستطيع انشاء حزم الجافا؟</span></span><br />
<br />
لنرى مجموعة من الفئات و التي نستطيع وضعها في حزمة معينة. نفترض اننا كتبنا فئات عن النقاط و الدائرة و المستطيل و المربع.</span><br />
<br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Point {<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_x coord;<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_y coord;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point() {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point(int x, int y) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
[b][align=center][FONT=Tahoma]}<br />
<br />
<br />
[/FONT]<br />
<br />
[/align]<br />
[/b]</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Rectangle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;double height;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Rectangle(int x, int y, double w, double h)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width = w;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height = h;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Circle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double radius;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Circle(int x, int y, double r)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;radius = r;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Square extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double edge;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Square(int x, int y, double e)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edge = e;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">الآن نود أن نضع هذه الفئات مع بعضها البعض في حزمة لعدة أسباب:<br />
<br />
نستطيع نحن و المبرمجين الآخرين أن نجد هذه الفئات لأنها مترابطة.<br />
نستطيع نحن و المبرمجين الآخرين أن نعرف كيف نجد هذه الفئات لأنها دوال رسم مترابطة.<br />
اسماء الفئات السابقة لن تتعارض مع اسماء الفئات من الحزم الاخرى لأنها سوف تكون تحت حزمة جديدة من انشائك، مثال على ذلك:</span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Point {<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_x coord;<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_y coord;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point() {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point(int x, int y) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div><br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Rectangle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;double height;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Rectangle(int x, int y, double w, double h)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width = w;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height = h;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Circle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double radius;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Circle(int x, int y, double r)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;radius = r;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Square extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double edge;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Square(int x, int y, double e)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edge = e;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
نلاحظ هنا اننا اضفنا السطر <span style="color: blue;" class="mycode_color">package </span><span style="color: blue;" class="mycode_color">geometry </span>في كل الفئات ( كل فئة توجد في ملف مستقل ). لكن لو فرضنا اننا نريد استخدام الفئة Rectangle موجودة بالحزمة java.awt مع الفئة الموجود بالحزمة geometry بنفس البرنامج الذي نريد كتابته، فماذا نفعل ؟<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">استدعاء فئتين بنفس المسمى:</span></span> نستطيع ذلك باستخدام <span style="font-weight: bold;" class="mycode_b">fully </span><span style="font-weight: bold;" class="mycode_b">qualified </span><span style="font-weight: bold;" class="mycode_b">name </span>و هو كتابة المسار الكامل للفئة، مثال على ذلك:<br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>java.awt.Rectangle rec1 = new java.awt.Rectangle(...); // استخدمنا المسار الكامل للفئة <br />
geometry.Rectangle rec2 = new geometry.Rectangle(...); // و هنا ايضاً</code></div></div></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">كيفية استدعاء فئة معينة من الحزمة الخاصة بها:</span></span> تستطيع استدعاء الفئات من الحزم عن طريق ثلاث طرق:<br />
<br />
استدعائها عن طريق كتابة المسار الكامل ( كما المثال السابق ).<br />
استدعائها فقط عن طريق الحزمة java.awt.Rectangle<br />
استدعاء الحزمة كاملة بما فيها من فئات اخرى java.awt.*;¹.<br />
¹ النجمة (*) تدل على استدعاء الحزم الفرعية و الفئات الموجودة تحت هذه الحزمة.<br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: DarkOrange;" class="mycode_color">***********************************************</span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: DarkOrchid;" class="mycode_color">ارجو ان يكون الدرس واضحا اخوكم تيبو</span></span></div>
[/b]]]></description>
			<content:encoded><![CDATA[<span style="color: #000000;" class="mycode_color"><span style="font-family: arial;" class="mycode_font"><span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size">[b]<span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
</span></span></span></span></span><br />
<span style="color: DarkOrchid;" class="mycode_color"><span style="font-size: 6pt;" class="mycode_size">حزم الجافا (Java Packages)</span></span></div>
[/b]</span></span><br />
<br />
<span style="font-weight: bold;" class="mycode_b"><div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">.ماهي حزم الجافا؟<br />
.لماذا نحتاج حزم الجافا؟<br />
.كيف نستطيع انشاء حزم الجافا</span>؟</div>
<br />
<br />
<span style="text-decoration: underline;" class="mycode_u">[b]<span style="font-size: 4pt;" class="mycode_size"><span style="color: Red;" class="mycode_color"><div style="text-align: center;" class="mycode_align">ماهي حزم الجافا؟</div>
</span></span></span></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="font-weight: bold;" class="mycode_b"><span style="font-size: 4pt;" class="mycode_size"><div style="text-align: center;" class="mycode_align">التعريف:</div>
</span></span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">حزم الجافا هي مجموعة من الفئات المترابطة، و كل مجموعة من الفئات تنظم تحت حزمة معينة لأجل تحديد الهوية. و الحزمة تتكون من:<br />
<br />
حزم فرعية تحت الحزمة الأم.<br />
مجموعة من الفئات المتعلقة بالحزمة الأم.<br />
بعض الأمثلة: الحزمة Java تحتوي على حزم فرعية منها applet, io, alng, net, awt &amp; util و لو أخذنا الحزمة الفرعية Java.awt لحصلنا على حزمة فرعية من awt مثل image و يكون الامتداد لها Java.awt.image</span></div>
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="text-decoration: underline;" class="mycode_u"><div style="text-align: center;" class="mycode_align"><span style="font-weight: bold;" class="mycode_b"><span style="color: Red;" class="mycode_color">لماذا نحتاج حزم الجافا؟</span></span></div>
</span></span><br />
<div style="text-align: center;" class="mycode_align"><span style="font-size: 4pt;" class="mycode_size">مبرمجي الجافا يعتمدون على الحزم لتكوين فئات مترابطة داخل هذه الحزم و الأسباب هي:<br />
<br />
العثور على الفئات بشكل سريع و استخدامها بالبرامج.<br />
تنحدر الفئات تحت الحزم لكي لا تتعارض اسماء الفئات مع بعضها البعض.<br />
للتحكم بالفئات بشكل كامل.</span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">مسميات الحزم و الحزم الفرعية و الفئات:</span></span> الحزمة تتكون من حزم فرعية و فئات متفرعة، لكن لا نستطيع تسمة الحزمة أو الحزم الفرعية أو احدى الفئات باسم واحد. و مثال على ذلك: الحزمة java.awt لديها حزمة فرعية بالاسم image. لكن لا نستطيع تسمية احدى الفئات بالاسم image، لأن الاسم محجوز للحزمة الفرعية و العكس صحيح.<br />
<br />
<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: red;" class="mycode_color">كيف نستطيع انشاء حزم الجافا؟</span></span><br />
<br />
لنرى مجموعة من الفئات و التي نستطيع وضعها في حزمة معينة. نفترض اننا كتبنا فئات عن النقاط و الدائرة و المستطيل و المربع.</span><br />
<br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Point {<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_x coord;<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_y coord;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point() {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point(int x, int y) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
[b][align=center][FONT=Tahoma]}<br />
<br />
<br />
[/FONT]<br />
<br />
[/align]<br />
[/b]</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Rectangle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;double height;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Rectangle(int x, int y, double w, double h)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width = w;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height = h;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Circle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double radius;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Circle(int x, int y, double r)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;radius = r;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>public class Square extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double edge;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Square(int x, int y, double e)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edge = e;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-size: 4pt;" class="mycode_size">الآن نود أن نضع هذه الفئات مع بعضها البعض في حزمة لعدة أسباب:<br />
<br />
نستطيع نحن و المبرمجين الآخرين أن نجد هذه الفئات لأنها مترابطة.<br />
نستطيع نحن و المبرمجين الآخرين أن نعرف كيف نجد هذه الفئات لأنها دوال رسم مترابطة.<br />
اسماء الفئات السابقة لن تتعارض مع اسماء الفئات من الحزم الاخرى لأنها سوف تكون تحت حزمة جديدة من انشائك، مثال على ذلك:</span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Point {<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_x coord;<br />
&nbsp;&nbsp;&nbsp;&nbsp; int_y coord;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point() {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = 0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Point(int x, int y) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_coord = x;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_coord = y;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div><br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Rectangle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double width;<br />
&nbsp;&nbsp;&nbsp;&nbsp;double height;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Rectangle(int x, int y, double w, double h)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width = w;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height = h;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Circle extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double radius;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Circle(int x, int y, double r)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;super(x, y);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;radius = r;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>package geometry;<br />
public class Square extends Point<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;double edge;<br />
<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;public Square(int x, int y, double e)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edge = e;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</code></div></div></span><br />
<br />
نلاحظ هنا اننا اضفنا السطر <span style="color: blue;" class="mycode_color">package </span><span style="color: blue;" class="mycode_color">geometry </span>في كل الفئات ( كل فئة توجد في ملف مستقل ). لكن لو فرضنا اننا نريد استخدام الفئة Rectangle موجودة بالحزمة java.awt مع الفئة الموجود بالحزمة geometry بنفس البرنامج الذي نريد كتابته، فماذا نفعل ؟<br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">استدعاء فئتين بنفس المسمى:</span></span> نستطيع ذلك باستخدام <span style="font-weight: bold;" class="mycode_b">fully </span><span style="font-weight: bold;" class="mycode_b">qualified </span><span style="font-weight: bold;" class="mycode_b">name </span>و هو كتابة المسار الكامل للفئة، مثال على ذلك:<br />
<br />
<span style="font-family: Tahoma;" class="mycode_font"><div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>java.awt.Rectangle rec1 = new java.awt.Rectangle(...); // استخدمنا المسار الكامل للفئة <br />
geometry.Rectangle rec2 = new geometry.Rectangle(...); // و هنا ايضاً</code></div></div></span><br />
<br />
<span style="text-decoration: underline;" class="mycode_u"><span style="color: Red;" class="mycode_color">كيفية استدعاء فئة معينة من الحزمة الخاصة بها:</span></span> تستطيع استدعاء الفئات من الحزم عن طريق ثلاث طرق:<br />
<br />
استدعائها عن طريق كتابة المسار الكامل ( كما المثال السابق ).<br />
استدعائها فقط عن طريق الحزمة java.awt.Rectangle<br />
استدعاء الحزمة كاملة بما فيها من فئات اخرى java.awt.*;¹.<br />
¹ النجمة (*) تدل على استدعاء الحزم الفرعية و الفئات الموجودة تحت هذه الحزمة.<br />
<br />
<span style="font-size: 4pt;" class="mycode_size"><span style="color: DarkOrange;" class="mycode_color">***********************************************</span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: DarkOrchid;" class="mycode_color">ارجو ان يكون الدرس واضحا اخوكم تيبو</span></span></div>
[/b]]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[الدرس التاسع - كيفية استخدام UndoManager بالبرامج]]></title>
			<link>https://vb4arb.com/vb/showthread.php?tid=6520</link>
			<pubDate>Fri, 19 Oct 2012 08:26:58 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://vb4arb.com/vb/member.php?action=profile&uid=3403">Raggi Tech</a>]]></dc:creator>
			<guid isPermaLink="false">https://vb4arb.com/vb/showthread.php?tid=6520</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: magenta;" class="mycode_color">السلام عليكم</span></span><br />
<br />
اي شخص يحتاج الى Undo و Redo لاحد برامجه،، يستطيع من خلال هذا الدرس تطبيق الطريقه و استخدامها.<br />
<br />
بالبداية: اضف الباكيج للبرنامج:<br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import javax.swing.undo.*;</code></div></div>ثانياً: نقوم بنسخ الكود التالي للبرنامج:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=seagreen]//UNDO AND REDOACTION CLASSES <br />
//THIS PASRT OF CODE WAS TAKEN FROM THE NOTEPAD DEMO FOUND IN THE JDK1.4.1 DEMO DIRECTORY [/COLOR]<br />
class UndoAction extends AbstractAction{ <br />
public UndoAction(){ <br />
super("Undo", new ImageIcon("images/undo.gif")); <br />
setEnabled(false); <br />
} <br />
public void actionPerformed(ActionEvent e){ <br />
try{ <br />
undo.undo(); <br />
} <br />
catch (CannotUndoException ex){ <br />
System.out.println("Unable to undo: " + ex); <br />
ex.printStackTrace(); <br />
} <br />
update(); <br />
redoAction.update(); <br />
} <br />
protected void update(){ <br />
if(undo.canUndo()){ <br />
setEnabled(true); <br />
putValue("Undo", undo.getUndoPresentationName()); <br />
} <br />
else{ <br />
setEnabled(false); <br />
putValue(Action.NAME, "Undo"); <br />
} <br />
} <br />
} <br />
class RedoAction extends AbstractAction{ <br />
public RedoAction(){ <br />
super("Redo", new ImageIcon("images/redo.gif")); <br />
setEnabled(false); <br />
} <br />
public void actionPerformed(ActionEvent e){ <br />
try{ <br />
undo.redo(); <br />
} <br />
catch (CannotRedoException ex){ <br />
System.out.println("Unable to redo: " + ex); <br />
ex.printStackTrace(); <br />
} <br />
update(); <br />
undoAction.update(); <br />
} <br />
protected void update(){ <br />
if(undo.canRedo()){ <br />
setEnabled(true); <br />
putValue("Redo", undo.getRedoPresentationName()); <br />
} <br />
else{ <br />
setEnabled(false); <br />
putValue(Action.NAME, "Redo"); <br />
} <br />
} <br />
}</code></div></div>ثالثاً: نقوم بانشاء الاوبجكت للبرنامج: <br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=seagreen]//for using undo &amp; redo[/color]<br />
UndoManager undo = new UndoManager(); <br />
UndoAction undoAction = new UndoAction(); <br />
RedoAction redoAction = new RedoAction();</code></div></div>اخيراً: نقوم اضافة الـ UndoAction و الـ redoAction للـ Menu كأنه MenuItem و سوف تستطيع استخدامها بشكل تلقائي:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>MenuName.add(undoAction); <br />
ManuName.add(redoAction);</code></div></div>** للتوضيح .. اذا كان المنيو مافي اي صور .. نستبدل هذا الكود:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>super("Undo", new ImageIcon("images/undo.gif"));</code></div></div>بهذا الكود:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>super("Undo");</code></div></div>و نفس الطريقه مع كلاس RedoAction ..<br />
<br />
<span style="color: magenta;" class="mycode_color">************************************************** **************</span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: darkorchid;" class="mycode_color">ارجو ان يكون الدرس واضح تقبلوا تحياتي <br />
اخوكم تيبو</span></span></div>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"><span style="font-family: times new roman;" class="mycode_font"><span style="font-size: 5pt;" class="mycode_size"><span style="font-weight: bold;" class="mycode_b"><span style="color: #000080;" class="mycode_color">كاتب الموضوع : <span style="color: green;" class="mycode_color">tibo<br />
<br />
</span></span></span></span></span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: magenta;" class="mycode_color">السلام عليكم</span></span><br />
<br />
اي شخص يحتاج الى Undo و Redo لاحد برامجه،، يستطيع من خلال هذا الدرس تطبيق الطريقه و استخدامها.<br />
<br />
بالبداية: اضف الباكيج للبرنامج:<br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>import javax.swing.undo.*;</code></div></div>ثانياً: نقوم بنسخ الكود التالي للبرنامج:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[COLOR=seagreen]//UNDO AND REDOACTION CLASSES <br />
//THIS PASRT OF CODE WAS TAKEN FROM THE NOTEPAD DEMO FOUND IN THE JDK1.4.1 DEMO DIRECTORY [/COLOR]<br />
class UndoAction extends AbstractAction{ <br />
public UndoAction(){ <br />
super("Undo", new ImageIcon("images/undo.gif")); <br />
setEnabled(false); <br />
} <br />
public void actionPerformed(ActionEvent e){ <br />
try{ <br />
undo.undo(); <br />
} <br />
catch (CannotUndoException ex){ <br />
System.out.println("Unable to undo: " + ex); <br />
ex.printStackTrace(); <br />
} <br />
update(); <br />
redoAction.update(); <br />
} <br />
protected void update(){ <br />
if(undo.canUndo()){ <br />
setEnabled(true); <br />
putValue("Undo", undo.getUndoPresentationName()); <br />
} <br />
else{ <br />
setEnabled(false); <br />
putValue(Action.NAME, "Undo"); <br />
} <br />
} <br />
} <br />
class RedoAction extends AbstractAction{ <br />
public RedoAction(){ <br />
super("Redo", new ImageIcon("images/redo.gif")); <br />
setEnabled(false); <br />
} <br />
public void actionPerformed(ActionEvent e){ <br />
try{ <br />
undo.redo(); <br />
} <br />
catch (CannotRedoException ex){ <br />
System.out.println("Unable to redo: " + ex); <br />
ex.printStackTrace(); <br />
} <br />
update(); <br />
undoAction.update(); <br />
} <br />
protected void update(){ <br />
if(undo.canRedo()){ <br />
setEnabled(true); <br />
putValue("Redo", undo.getRedoPresentationName()); <br />
} <br />
else{ <br />
setEnabled(false); <br />
putValue(Action.NAME, "Redo"); <br />
} <br />
} <br />
}</code></div></div>ثالثاً: نقوم بانشاء الاوبجكت للبرنامج: <br />
<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>[color=seagreen]//for using undo &amp; redo[/color]<br />
UndoManager undo = new UndoManager(); <br />
UndoAction undoAction = new UndoAction(); <br />
RedoAction redoAction = new RedoAction();</code></div></div>اخيراً: نقوم اضافة الـ UndoAction و الـ redoAction للـ Menu كأنه MenuItem و سوف تستطيع استخدامها بشكل تلقائي:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>MenuName.add(undoAction); <br />
ManuName.add(redoAction);</code></div></div>** للتوضيح .. اذا كان المنيو مافي اي صور .. نستبدل هذا الكود:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>super("Undo", new ImageIcon("images/undo.gif"));</code></div></div>بهذا الكود:<br />
<br />
<div class="codeblock"><div class="title">كود :</div><div class="body" dir="ltr"><code>super("Undo");</code></div></div>و نفس الطريقه مع كلاس RedoAction ..<br />
<br />
<span style="color: magenta;" class="mycode_color">************************************************** **************</span><br />
<span style="font-size: 6pt;" class="mycode_size"><span style="color: darkorchid;" class="mycode_color">ارجو ان يكون الدرس واضح تقبلوا تحياتي <br />
اخوكم تيبو</span></span></div>]]></content:encoded>
		</item>
	</channel>
</rss>