درخواست های ارتباط
جستجو
    لیست دوستان من
    صندوق پیام
    همه را دیدم
    • در حال دریافت لیست پیام ها
    صندوق پیام
    رویدادها
    همه را دیدم
    • در حال دریافت لیست رویدادها
    همه رویدادهای من

    تا 75 درصد تخفیف ویژه شب یلدا بر روی کلیه محصولات وب سایت توسینسو فقط تا 30 آذر

    مانده تا پایان تخفیف ها

    تخفیف های وب سایت
    همه تخفیف ها

    عضویت در

    کانال تلگرام

    توسینسو

    اطلاعات مطلب
      مدرس/نویسنده
      مهدی عادلی فر
      امتیاز: 144149
      رتبه:6
      117
      196
      285
      1466
      مهدی عادلی، بنیان گذار TOSINSO. کارشناس ارشد نرم افزار کامپیوتر از دانشگاه صنعتی امیرکبیر و #C و جاوا و اندروید کار می کنم. در زمینه های موبایل و وب و ویندوز فعالیت دارم و به طراحی نرم افزار و اصول مهندسی نرم افزار علاقه مندم. پروفایل کاربر
      دوره های مرتبط
      دوره های توسینسو دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      دوره آموزشی برنامه نویسی اندروید با زبان جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 27 قسط خریداری کنید
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
      مدرس: ایمان جوادی
      این دوره را در 13 قسط خریداری کنید
      دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 17 قسط خریداری کنید
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      دوره آموزشی برنامه نویسی پیشرفته زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 78 قسط خریداری کنید
      دوره آموزشی طراحی رابط کاربری با JavaFX
      دوره آموزشی طراحی رابط کاربری با JavaFX
      مدرس: حسام رسولیان
      این دوره را در 13 قسط خریداری کنید
      دوره متوسطه برنامه نویسی به زبان جاوا به زبان ساده
      دوره متوسطه برنامه نویسی به زبان جاوا به زبان ساده
      مدرس: مهدی عادلی فر
      این دوره را در 18 قسط خریداری کنید
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
      مدرس: مهدی عادلی فر
      این دوره را در 2 قسط خریداری کنید
      دوره آموزشی ساخت ربات تلگرام
      دوره آموزشی ساخت ربات تلگرام
      مدرس: کاظم تقندیکی
      این دوره را در 8 قسط خریداری کنید
      دوره آموزشی Exploit نویسی به زبان Perl
      دوره آموزشی Exploit نویسی به زبان Perl
      مدرس: ایمان جوادی
      این دوره را در 7 قسط خریداری کنید
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
      مدرس: کاظم تقندیکی
      این دوره را در 20 قسط خریداری کنید
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 11 قسط خریداری کنید
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
      مدرس: حسین احمدی
      این دوره را در 17 قسط خریداری کنید
      دوره آموزشی برنامه نویسی مقدماتی پایتون به زبان ساده
      دوره آموزشی برنامه نویسی مقدماتی پایتون به زبان ساده
      مدرس: حسین احمدی
      این دوره را در 23 قسط خریداری کنید
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      دوره تخصصی آموزش متن کاوی با ابزار NLTK
      مدرس: کاظم تقندیکی
      این دوره را در 11 قسط خریداری کنید
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
      مدرس: امیر حسین فضلیخانی
      این دوره را در 12 قسط خریداری کنید

      آموزش برنامه نویسی جاوا قسمت نهم: معرفی و آموزش کار با عملگرها در جاوا - ادامه

      تاریخ 35 ماه قبل
      نظرات 1
      بازدیدها 940
      با سلام به همه دوستان و همراهان Itpro.
      --

      عملگرهای بیتی


      جاوا دارای چندین عملگر بیتی است که این عملگرها بر روی انواع داده int, long, short, char, byte قابل اعمال است. عملگرهای بیتی بر روی تک تک بیتهای عملوند ها کار می کنند. برای مثال در متغیر a مقدار 60 را قرار می دهیم و در متغیر b عدد 13 را قرار می دهیم. حال شکل باینری این دو متغیر به شکل زیر خواهد بود
      a=00111100
      b=00001101
      
      در ادامه به بررسی این عملگرها می پردازیم.
      • عملگر and بیتی (&) این عملگر بیت های دو عملوند را دو به دو با هم and می کند و مقدار را مشخص می نماید برای مثال نتیجه and بیتی a&b برابر 12 خواهد بود که مقدار باینری آن 00001100 می باشد.
      • عملگر or بیتی این عملگر بیت های دو عملوند را دو به دو با هم or می نماید. برای مثال نتیجه عمل a|b برابر مقدار 61 یعنی عدد باینری 00111101 خواهد بود.
      • عملگر xor بیتی (^) این عملگر بیت های دو عدد را با هم xor می نماید. یعنی اگر یکی از مقادیر مقدار یک و دیگری مقدار 0 داشته باشد جواب 1 و اگر هردو یکسان باشند جواب 0 می دهد. برای مثال نتیجه عمل a^b برابر 49 که معادل باینری آن 00110001 می باشد است.
      • عملگر مکمل بیتی(~) این عملگر یک عملگر تک عملوندی است که بیت های عملوند خود را برعکس می کند یعنی اگر بیت مورد نظر 1 باشد آن را 0 و اگر 0 باشد آن را 1 می کند. برای مثال ~a برابر -61 با عدد باینری 11000011 است.
      • عملوند شیفت به چپ (>>) این عملوند مقدار عدد را به تعداد گفته شده به سمت چپ شیفت بیتی می دهد. برای مثال اگر بخواهیم a را دو بار به سمت چپ شیفت بدهیم باید به این شکل بنویسیم.a<<2 در این صورت نتیجه برابر 240 خواهد بود زیرا که معادل باینری آن 11110000 می باشد.
      • عملگر شیفت به راست(>>) این عملگر مقدار عدد را به تعداد گفته شده به راست شیفت می دهد. برای مثال نتیجه عمل a>>2 برابر مقدار 15 با عدد باینری 1111 خواهد شد.
      • عملگر شیفت به راست با ورود 0 : عملگرهای شیفت به راست و شیفت به چپ که گفته شده مقدار عدد خارج شده را به عنوان مقدار ورودی شیفت وارد می کردند ولی عملگر شیفت به راست با ورودی 0 عدد را به سمت راست شیفت می دهد و مقدار صفر را از سمت چپ به آن وارد می نماید. برای مثال نتیجه عمل a>>>2 عدد 15 می باشد.
      برای درک بهتر عملگرهای بیتی به کد زیر دقت کنید.
      public class Test {
      
        public static void main(String args[]) {
           int a = 60;	/* 60 = 0011 1100 */  
           int b = 13;	/* 13 = 0000 1101 */
           int c = 0;
      
           c = a & b;       /* 12 = 0000 1100 */ 
           System.out.println("a & b = " + c );
      
           c = a | b;       /* 61 = 0011 1101 */
           System.out.println("a | b = " + c );
      
           c = a ^ b;       /* 49 = 0011 0001 */
           System.out.println("a ^ b = " + c );
      
           c = ~a;          /*-61 = 1100 0011 */
           System.out.println("~a = " + c );
      
           c = a << 2;     /* 240 = 1111 0000 */
           System.out.println("a << 2 = " + c );
      
           c = a >> 2;     /* 215 = 1111 */
           System.out.println("a >> 2  = " + c );
      
           c = a >>> 2;     /* 215 = 0000 1111 */
           System.out.println("a >>> 2 = " + c );
        }
      } 
      
      
      خروجی برنامه بالا به شکل زیر خواهد بود
      a & b = 12
      a | b = 61
      a ^ b = 49
      ~a = -61
      a << 2 = 240
      a >> 2=15
      a >>> 2=15
      
      


      عملگرهای منطقی


      عملگرهای منطقی بر روی داده های از نوع boolean و یا عباراتی که نتیجه boolean یعنی مقدار درست یا غلط دارند عمل می کنند. در ادامه به شرح این عملوند ها می پردازیم. برای مثال فرض کنید که دو متغیر a, b داریم که مقدار a برابر true و مقدار b برابر false می باشد.
      1. عملگر and منطقی (&&) این عملگر در صورتی جواب true برمی گرداند که هردو عملوند چپ و راست آن true یا غیرصفر باشند. برای مثال نتیجه عمل a&&b مقدار false است.
      2. عملگر or منطقی این عملگر در صورتی نتیجه true می دهد که یکی از عملوند ها true یا غیر صفر باشد. برای مثال نتیجه عمل a||b مقدار true است.
      3. عملگر نقیض منطقی(!) این عملگر یک عملگر تک عملوندی است. اگر عملوند این عملگر درست باشد مقدار False و در غیر این صورت مقدار true برمی گرداند. برای مثال حاصل عبارت !(a&&b) مقدار true می باشد.
      برای مثال به کد زیر دقت نمایید.
      public class Test {
      
        public static void main(String args[]) {
           boolean a = true;	
           boolean b = false;	
      
           System.out.println("a && b = " + (a&&b));
      
           System.out.println("a || b = " + (a||b) );
      
           System.out.println("!(a && b) = " + !(a && b));
        }
      } 
      
      خروجی کد به شکل زیر است
      a && b = false
      a || b = true
      !(a && b) = true
      

      عملگرهای انتسابی


      عملگرهای انتسابی که توسط جاوا پشتیبانی می شوند عبارتند از:
      • عملگر انتساب(=) این عملگر مقدار سمت راست عملگر را در عملوند سمت چپ می ریزد. برای مثال C=A+B مقدار C برابر با جمع A و B خواهد بود.
      • عملگر جمع و انتساب(+=) این عملگر به این شکل عمل می کند که ابتدا عملوند سمت راست را با عملوند سمت چپ جمع نموده و در عملوند سمت چپ ذخیره می نماید. برای مثال C+=A معادل C=C+A می باشد.
      • عملگر تفریق و انتساب(-=) مانند همان عملگر جمع و انتساب عمل می کند با این تفاوت که عملوند سمت راست را از عملوند سمت چپ کم کرده و ذخیره می کند. برای مثال عمل C-=A معادل C=C-A می باشد.
      • عملگر ضرب و انتساب(*=) و عملگر (/=) و عملگر (%=) معادل اعمال قبلی هستند.
      • عملگر های >>= و <<= و &= و ^= و |= نیز اعمال بیتی گفته شده را به انضمام انتساب انجام می دهند.
      برای مثال و درک بهتر عملگرهای انتساب به مثال زیر دقت نمایید.
      public class Test {
      
        public static void main(String args[]) {
           int a = 10;	
           int b = 20;
           int c = 0;
      
           c = a + b;
           System.out.println("c = a + b = " + c );
      
           c += a ;
           System.out.println("c += a  = " + c );
      
           c -= a ;
           System.out.println("c -= a = " + c );
      
           c *= a ;
           System.out.println("c *= a = " + c );
      
           a = 10;
           c = 15;
           c /= a ;
           System.out.println("c /= a = " + c );
      
           a = 10;
           c = 15;
           c %= a ;
           System.out.println("c %= a  = " + c );
      
           c <<= 2 ;
           System.out.println("c <<= 2 = " + c );
      
           c >>= 2 ;
           System.out.println("c >>= 2 = " + c );
      
           c >>= 2 ;
           System.out.println("c >>= a = " + c );
      
           c &= a ;
           System.out.println("c &= 2  = " + c );
        
           c ^= a ;
           System.out.println("c ^= a   = " + c );
      
           c |= a ;
           System.out.println("c |= a   = " + c );
        }
      } 
      
      
      خروجی کد بالا به شکل زیر است:
      c = a + b = 30
      c += a  = 40
      c -= a = 30
      c *= a = 300
      c /= a = 1
      c %= a  = 5
      c <<= 2 = 20
      c >>= 2 = 5
      c >>= 2 = 1
      c &= a  = 0
      c ^= a   = 10
      c |= a   = 10
      
      

      عملگرهای متفرقه


      عملگرهای دیگری نیز در جاوا وجود دارند که در ادامه آمده اند. این عملگرها در گروه های بالا قرار می گیرند.
      • عملگر شرطی (? :). این عملگر که به عنوان عملگر سه گانه نیز شناخته می شود برای ارزیابی یک مقدار boolean به کار می رود. این عملگر به این منظور به کار می رود که مشخص کند که کدام مقدار در عملوند سمت چپ انتساب قرار گیرد. اگر شرط عملگر درست باشد مقداری که پشت علامت سوال ؟ قرار می گیرد انتخاب می شود و در غیر این صورت مقدار موجود بعد از علامت دو نقطه : انتخاب خواهد شد. برای مثال به کد زیر دقت کنید.
      • public class Test {
        
           public static void main(String args[]){
              int a, b;
              a = 10;
              b = (a == 1) ? 20: 30;
              System.out.println( "Value of b is : " +  b );
        
              b = (a == 10) ? 20: 30;
              System.out.println( "Value of b is : " + b );
           }
        }
        
        
      خروجی این کد به شکل زیر خواهد بود
      Value of b is : 30
      Value of b is : 20
      
      
      این عملگر یک عملگر تصمیم گیری است و به جای if else های راحت مورد استفاده قرار می گیرد.
      • عملگر instanceof این عملگر برای اشیا به کار می رود. این عملگر چک می کند که آیا شی مورد نظر یک نمونه از کلاس یا اینترفیس مشخص شده است یا خیر. اگر شی گفته شده از نوع کلاس یا اینترفیس مورد نظر باشد نتیجه true و در غیر این صورت نتیجه false خواهد بود. برای مثال به کد زیر دقت کنید.
      • public class Test {
        
           public static void main(String args[]){
              String name = "James";
              // following will return true since name is type of String
              boolean result = name instanceof String;  
              System.out.println( result );
           }
        }
        
        
      نتیجه کد بالا به شرح زیر خواهد بود
      true
      
      به مثال زیر نیز دقت کنید.
      class Vehicle {}
      
      public class Car extends Vehicle {
         public static void main(String args[]){
            Vehicle a = new Car();
            boolean result =  a instanceof Car;
            System.out.println( result );
         }
      }
      
      
      خروجی کد بالا هم true می باشد.

      تقدم عملگرها



      نکته ای که باقی می ماند این است که بدانیم کدام یک از متغیر ها نسبت به قبلی دارای تقدم بیشتری در اجرا می باشد. تقدم عملگرها برای ارزیابی متغیرها بسیار مهم است. تقدم برخی متغیرها نسبت به برخی دیگر بالاتر است. برای مثال عملگر ضرب دارای تقدم بیشتری نسبت به جمع و تفریق است. برای مثال x=7+3*2 ابتدا عمل ضرب انجام می شوند و سپس عمل جمع انجام می شود که نتیجه عمل عدد 13 خواهد بود. در شکل زیر تقدم عملگرها از بالا به پایین نشان داده شده است.
      آموزش برنامه نویسی جاوا قسمت نهم: معرفی و آموزش کار با عملگرها در جاوا - ادامه


      Itpro باشید



      نویسنده: مهدی عادلی فر
      منبع: انجمن تخصصی فناوری اطلاعات ایران
      هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد.


      برچسب ها
      ردیفعنوان
      1آموزش برنامه نویسی جاوا قسمت اول : معرفی ویژگیها ، خصوصیات و نحوه شروع به کار با زبان برنامه نویسی جاوا
      2 آموزش برنامه نویسی جاوا قسمت دوم : بررسی مفاهیم شیء ، کلاس ، Method و شروع برنامه نویسی با زبان جاوا
      3آموزش برنامه نویسی جاوا قسمت سوم: معرفی مفاهیم اولیه و مفاهیم شی گرایی در برنامه نویسی جاوا
      4آموزش برنامه نویسی جاوا قسمت چهارم: معرفی مفاهیم شی گرایی در برنامه نویسی جاوا - ادامه
      5آموزش برنامه نویسی جاوا قسمت پنجم: معرفی انواع داده ها در جاوا
      6آموزش برنامه نویسی جاوا قسمت ششم: آموزش انواع متغیر در جاوا
      7آموزش برنامه نویسی جاوا قسمت هفتم: معرفی Modifierها در جاوا
      8آموزش برنامه نویسی جاوا قسمت هشتم: معرفی و آموزش عملگرهای جاوا
      9آموزش برنامه نویسی جاوا قسمت نهم: معرفی و آموزش کار با عملگرها در جاوا - ادامه
      10 آموزش برنامه نویسی جاوا قسمت دهم: کار با حلقه های تکرار در جاوا
      11 آموزش برنامه نویسی جاوا قسمت یازدهم: معرفی و آموزش استفاده از عبارات شرطی در جاوا
      12 آموزش برنامه نویسی جاوا قسمت دوازدهم: معرفی انواع کلاس wrapper مربوط به اعداد در جاوا و نحوه استفاده از آنها
      13 آموزش برنامه نویسی جاوا قسمت سیزدهم: معرفی انواع کلاس wrapper مربوط به اعداد در جاوا و نحوه استفاده از آنها -ادمه
      14 آموزش برنامه نویسی جاوا قسمت چهاردهم: معرفی و نحوه استفاده از کلاس Wrapper مربوط به کاراکتر ها در جاوا
      15 آموزش برنامه نویسی جاوا قسمت پانزدهم: معرفی و آموزش نحوه استفاده از کلاس String و کار با رشته ها در جاوا
      16 آموزش برنامه نویسی جاوا قسمت شانزدهم: معرفی و آموزش نحوه استفاده از کلاس String در جاوا و کار با رشته ها در جاوا ادامه
      17 آموزش برنامه نویسی جاوا قسمت هفدهم: معرفی و آموزش نحوه استفاده از کلاس String در جاوا و کار با رشته ها در جاوا-ادامه 2
      18 آموزش برنامه نویسی جاوا قسمت هجدهم: معرفی و آموزش نحوه استفاده از کلاس String در جاوا و کار با رشته ها در جاوا-ادامه 3
      19 آموزش برنامه نویسی جاوا قسمت نوزدهم: معرفی و آموزش نحوه استفاده از کلاس های StringBuilder و StringBuffer
      20آموزش برنامه نویسی جاوا قسمت بیستم: معرفی و آموزش نحوه استفاده از آرایه ها
      21آموزش برنامه نویسی جاوا قسمت بیست و یکم: آموزش کار با تاریخ
      22آموزش برنامه نویسی جاوا قسمت بیست و دوم: معرفی و آموزش عبارات منظم(Regular expression)
      23آموزش برنامه نویسی جاوا قسمت بیست و سوم: نحوه تعریف و استفاده از متدها
      24آموزش برنامه نویسی جاوا قسمت بیست و چهارم: نحوه تعریف و استفاده از متدها- ادامه
      25آموزش برنامه نویسی جاوا قسمت بیست و پنجم: نحوه کار با استریم ها و فایل ها
      26آموزش برنامه نویسی جاوا قسمت بیست و ششم: نحوه کار با دایرکتوری ها
      27آموزش برنامه نویسی جاوا قسمت بیست و هفتم: معرفی و آموزش کلاس ByteArrayInputStream و کار با استریم ها
      28آموزش برنامه نویسی جاوا قسمت بیست و هشتم: معرفی کلاس File و شرح متدهای آن
      29 آموزش برنامه نویسی جاوا قسمت بیست و نهم: معرفی و شرح Exception ها
      30 آموزش برنامه نویسی جاوا قسمت سی ام: معرفی و شرح Exception ها- ادامه
      31 آموزش برنامه نویسی جاوا قسمت سی و یکم: معرفی و شرح Exception ها- ادامه 2
      32 آموزش برنامه نویسی جاوا قسمت سی و دوم: معرفی و شرح استفاده از انوع کلاس های داخلی
      33 آموزش برنامه نویسی جاوا قسمت سی و سوم: شرح وراثت کلاس ها و انواع آن
      34 آموزش برنامه نویسی جاوا قسمت سی و چهارم: معرفی و شرح override کردن متد ها
      35 آموزش برنامه نویسی جاوا قسمت سی و پنجم: معرفی و شرح چند ریختی (polymorphism)
      36 آموزش برنامه نویسی جاوا قسمت سی و ششم: شرح enum و ویژگی های آن
      37 آموزش برنامه نویسی جاوا قسمت سی و هفتم: معرفی و شرح abstract
      38 آموزش برنامه نویسی جاوا قسمت سی و هشتم: معرفی و آموزش نحوه استفاده از کپسول بندی (encapsulation)
      39 آموزش برنامه نویسی جاوا قسمت سی و نهم: معرفی و آموزش نحوه استفاده از اینترفیس ها
      40 آموزش برنامه نویسی جاوا قسمت چهلم: معرفی مفهوم پکیج(package) و نحوه استفاده از آن
      41 آموزش برنامه نویسی جاوا قسمت چهل و یکم: معرفی داده ساختارها - Enumeration
      42آموزش برنامه نویسی جاوا قسمت چهل و دوم: داده ساختار BitSet
      43آموزش برنامه نویسی جاوا قسمت چهل و سوم: داده ساختار Vector
      44آموزش برنامه نویسی جاوا قسمت چهل و چهارم: داده ساختار Stack(پشته)
      45آموزش برنامه نویسی جاوا قسمت چهل و پنجم: داده ساختار dictionary
      46آموزش برنامه نویسی جاوا قسمت چهل و ششم: داده ساختار Hashtable
      47آموزش برنامه نویسی جاوا قسمت چهل و هفتم: داده ساختار properites
      48 آموزش برنامه نویسی جاوا قسمت چهل و هشتم: معرفی و آموزش مفهوم جنریک
      49 آموزش برنامه نویسی جاوا قسمت چهل و نهم: معرفی و آموزش برنامه نویسی سوکت و شبکه سمت سرور
      50 آموزش برنامه نویسی جاوا قسمت پنجاهم: معرفی و آموزش برنامه نویسی سوکت و شبکه- سمت کلاینت و ارتباط با یکدیگر
      51 آموزش برنامه نویسی جاوا قسمت پنجاه و یکم: معرفی و آموزش استفاده از lambda expression
      52آموزش برنامه نویسی جاوا قسمت پنجاه و دوم:‌ معرفی مفاهیم Thread ها و Multi-Threading
      53آموزش برنامه نویسی جاوا قسمت پنجاه و سوم: معرفی و آموزشRunnable در Thread ها و Multi-Threading
      54آموزش برنامه نویسی جاوا قسمت پنجاه و چهارم: کلاس Thread و کار کردن با متدهای این کلاس
      دورهمجموعه کل دوره
      مطالب مرتبط

      در حال دریافت اطلاعات

      نظرات
      • این صفحه تبدیل به پی دی اف نمیشه :(((((

      برای ارسال نظر ابتدا به سایت وارد شوید