java中運算子與運算式用法介紹

來源:互聯網
上載者:User

1. 對兩個整型變數進行除法、模數和自加運算

(1) 在項目MyProject2中建立DivModDemo類。

(2) 在代碼編輯器中輸入以下代碼:

 代碼如下 複製代碼


public class DivModDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=8,b=5;
        System.out.println(a+"/"+b+"="+a/b);
        System.out.println(a+"/"+(-b)+"="+a/-b);
        System.out.println(-a+"/"+b+"="+-a/b);
        System.out.println(-a+"/"+(-b)+"="+(-a)/(-b));
        System.out.println(a+"%"+b+"="+a%b);
        System.out.println(a+"%"+(-b)+"="+a%-b);
        System.out.println(-a+"%"+b+"="+(-a)%b);
        System.out.println(-a+"%"+(-b)+"="+-a%-b);
        System.out.println(++a+"+"+b+"="+(++a)+b);
        System.out.println(a+++"+"+(-b)+"="+--a+-b);
        System.out.println(-++a+"+"+b+"="+-++a+b);
        System.out.println(-a+++"+"+(-b)+"="+-a+++-b);
        System.out.println(a);
    }

}

(3) 運行並偵錯工具,觀察DivModDemo類的運行結果。

2. 二進位的移動演算法

(1) 在項目MyProject2中建立BitShiftDemo類。

(2) 在代碼編輯器中輸入以下代碼:

 代碼如下 複製代碼


public class BitShiftDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=-16,b=16;
        System.out.println("******************************");
        System.out.println("a的位元為:"+Integer.toBinaryString(a));
        System.out.println("a左移1位後各位為"+Integer.toBinaryString(a<<1));
        System.out.println(a+"<<2="+(a<<2));
        System.out.println("******************************");
        System.out.println("a的位元為:"+Integer.toBinaryString(a));
        System.out.println("a右移1位後各位為"+Integer.toBinaryString(a>>1));
        System.out.println(a+">>2="+(a>>2));
        System.out.println("******************************");
        System.out.println("a的位元為:"+Integer.toBinaryString(a));
        System.out.println("a右移1位後各位為"+Integer.toBinaryString(a>>>1));
        System.out.println(a+">>>2="+(a>>>2));
        System.out.println("******************************");
        System.out.println("b的位元為:"+Integer.toBinaryString(b));
        System.out.println("b左移1位後各位為"+Integer.toBinaryString(b<<1));
        System.out.println(b+"<<2="+(b<<2));
        System.out.println("******************************");
        System.out.println("b的位元為:"+Integer.toBinaryString(b));
        System.out.println("b右移1位後各位為"+Integer.toBinaryString(b>>1));
        System.out.println(b+">>2="+(b>>2));
        System.out.println("******************************");
        System.out.println("b的位元為:"+Integer.toBinaryString(b));
        System.out.println("b右移1位後各位為"+Integer.toBinaryString(b>>>1));
        System.out.println(b+">>>2="+(b>>>2));
        System.out.println("******************************");
    }

}

(3) 運行並偵錯工具,觀察結果。

知識提示:要將整形的變數轉換為二進位的字元可以使用Integer.toBinaryString()完成,二進位位左移採用<<,右移採用>>完成。>>>是無符號右移運算子,變數值右移後,左側補0。

3. 關係運算與邏輯運算的混合運算

(1) 在項目MyProject2中建立OperationDemo類。

(2) 在代碼編輯器中輸入以下代碼:

 

 代碼如下 複製代碼

import java.io.*;
public class OperationDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=25,b=3;
        boolean d=a<b;
        System.out.println(a+"<"+b+"="+d);
        int e=3;
        d=(e!=0&&a/e>5);
        System.out.println(e+"!=0&&"+a+"/"+e+">5="+d);
        int f=0;
        d=(f!=0&&a/f>5);
        System.out.println(f+"!=0&&"+a+"/"+f+">5="+d);
        d=(f!=0&&a/f>5);
        System.out.println(f+"!=0&&"+a+"/"+f+">5="+d);
    }

}


(3) 運行並調試觀察程式運行結果。

4. 從鍵盤輸入兩個整數,通過下面程式計算這兩個整數的和並輸出運算結果。

 代碼如下 複製代碼

 

import java.io.*;
public class MySumDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int num1,num2,sum;
        String str="";
        BufferedReader buf;
        buf=new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Input the first integer:");
        try
        {
            str=buf.readLine();
        }
        catch(Exception e)
        {
           
        }
        num1=Integer.parseInt(str);
        System.out.print("Input the second integer:");
        try
        {
            str=buf.readLine();
        }
        catch(Exception e)
        {
           
        }
        num2=Integer.parseInt(str);
        sum=num1+num2;
        System.out.println("The sum is "+sum);
    }

}

5. 編寫一個程式,要求從鍵盤上輸入圓的半徑,求圓的面積並輸出結果。

 

 代碼如下 複製代碼

import java.io.*;
public class CircleArea {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double area;
        int radius;
        Circle1 circle=null;
        String str="";
        BufferedReader buf;
        buf=new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Input the radius:");
        try
        {
            str=buf.readLine();
        }
        catch(Exception e)
        {
           
        }
        radius=Integer.parseInt(str);
        circle=new Circle1(radius);
        area=circle.getArea();
        System.out.println("圓的面積:"+area);
    }

}
class Circle1{
    double radius,area;
    Circle1(double r){
        radius=r;
    }
    double getArea(){
        area=3.14159265*radius*radius;
        return area;
    }
}

6. 調試下面程式,剖析器運行結果。

 

 代碼如下 複製代碼

/**
 * @author solo
 *
 */
public class SanmuTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int iBig=2;
        int iSmall=1;
        boolean result=(iBig>=iSmall)?true:false;
        System.out.println("Result Is:"+result);
    }

}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.