J2SE之基础语法-算数计算符

Java语言支持如下运算符:

  算数运算符:+,-,*,/,%,++,--

  关系运算符:>,<,>=,<=,= =,!=

  逻辑运算符:!,&,|,……,&&,||

  位运算符:&,|,^,~,>>,<<,>>

  赋值运算符: =

  扩展运算符:+=,- =,*=,/=

  字符串连运算符:+

  //^:异或

自加和自减运算符:

public class Test{
  public static void main(String[] args){
  int i1 = 10, i2 = 20;
  int i = (i2++);
  System.out.print("i=" + i);
  System.out.println("i2=" + i2);
  i = (++i2);
  System.out.print("i=" + i);
  System.out.print(" i2=" + i2);
  i = (--i1);
  System.out.print("i=" + i);
  System.out.println(" i1=" + i1);
  i = (i1--);
  System.out.print("i=" + i);
  System.out.println(" i1=" + i1);
     
  }  
}

逻辑运算符

  

 短路与/短路或:只要第一个操作数确定了,第二个操作数不再计算

赋值运算符与扩展赋值运算符

  赋值运算符(=)

    当“=”两侧数据类型不一致时,可以适用默认类型转换或强制类型转换原则进行处理

      long 1 = 100;        int i = (int)1;

    注意:可以将整型常量直接赋值给byte,short,char类型变量,而不需要进行强制类型转换,只要不超出其表数范围

      byte b = 12;   char c = 100;

     x byte bb = 256;     X short s = -32769;

字符串连接符

  “+”除用于算数加法运算外,还可以用于对字符串进行连接操作

    int id = 800 + 90;

    String s = "hello" + "world";

  “+”运算符两侧的操作数中只要有一个是字符串(String)类型,系统自动将另一个操作数抓换为字符串然后再进行连接

    int c = 12;

    System.out.println("c=" +c);

三目条件运算符

  “三目条件运算符,语法格式”:

    x?y:z

   其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算的结果为表达式y的值,否则整个运算结果为表达式z的值

  例子:

    

int score = 80; int x = -100;
String type = score < 60 ? "不及格" : "及格"
int flag = x > 0 ? 1 : (x == 0 ? 0 : -1);
System.out.println("type=" + type);
System.ouit.println("flag=" + flag);

 语句

   条件语句-根据不同条件,执行不同语句。

  • if
  • if..else
  • if..else if
  • if..else if..else if ..else
  • switch

  循环语句-重复执行某些动作

  • for
  • while
  • do..while;

if语句

  • if
  • if..else
  • if..else if
  • if..else if..else if
  • if..else if..else if..else
  • 只有一句需要执行的语句时,可以省略{}
public class TestIF{
    public static void main(String[] args){
      int = 20;
      if(i <20){
     System.out.println("<20");
    System.out.println("<20");
    }else if (i < 40 ){
      System.out.println("<40";
    }else if(i < 60){
      System.out.println("<60");
    }else (
      System.out.println(">=60");
      System.out.println(">=60");

}
}        

else 要带{}

for循环语句

  • for语句如下形式:

  for(表达式1;表达式2;表达式3){语句;....;}

  • 执行过程

  首先就算表达式1,接着执行表达式2,若表达式2的值=ture,则执行语句,接着计算表达式3,再判断表达式2的值;依次重复下去,指导表达式2的值=flase

  for语句中三个表达式可以省略

  

例子:计算result = 1!+2!+...+10!

public class Test{
  public static void main(String[] args){
    long result = 0;
    long f = 1;
    for(int i = 1;i <= 10; i++){
      f = f * i;
      result += f;
}
     System.out.println("reslut=" + result);  
}
}

编写程序,用一个for循环计算1+3+5+7+......+99的值,并输出计算结果。(OddSum.java)

public class OddSum{
  public static void main(String[] args){
    long reslut = 0;
    for(int i = 1;i < 100;i=+2){
        result += i;
}
    System.out.println("reslut=" + result);
}  
}

while & do while 语句

  

public class TestWhile{
    public static void main(String[] args){
        int i = 0;
        while(i < 10){
            System.out.println(i);
            i++;
        }


    i = 0;
    
    do{
        System.out.println(i);
        i++;
        }while(i < 10);
    }
}

条件都是用()括起来,语句都是用{}括起来。

break&Continue语句

  break语句用于终止某个语句块的执行,用在循环语句中,可以强行退出循环:

  例如:

  

public class Test{
    public static void main(String agrs[]){
        int stop = 4;
        for(int i = 1; i <= 10; i++){
            //当i等于stop,退出循环
            if( i == stop)break;
            System.out.println("i = " +i);
        }
    }
}

 continue语句用在循环语句中,用于终止某次循环过程,跳过循环体中continue语句下面未执行的循环,开始下一次循环过程:

  例如:

   

public class Test{
    public static void main(String[] args){
        int skip = 4;
        for(int i = 1; i <= 5; i++){
            //当i等于skip时,跳出档次循环
                if(i == skip)continue;
                System.out.println("i = " +i);
            }
        }
}

 continue:终止此次循环,开始下一次循环。

循环语句举例

//输出1~100内前5个可以被3整除的数。

public class Test{
    public static void main(String[] args){
        int num = 0, i = 1;
        while(i<=100){
            if (i % 3 ==0){
                System.out.print(i +" ");
                    num++;
                }
              if(num == 5){
                    break;
                }
                i++;
            }
        }
}

//输出101~200内的质数:

public class Test{
    public static void main(String[] args){
        for(int i = 101; i<200; i+=2){
            boolean f = true;
            for(int j = 2; j<i; j++){
                    if(i % j == 0){
                        f = false;
                        break;
                    }
                }
                if(!f){continue;}
                System.out.print(" " + i);
            }
        }
}

switch语句(条件语句补充)

switch(){

  case xx:

    ....

  case xx:

    ....

  default:

    ....

}

小心case穿透,推荐使用break语句

多个case可以合并到一起

default可以省略,但不推荐省略

switch

java中switch语句只能探测int类型值

public class TestSwitch{
    public static void main(Sting[] args){
        int i = 18l
        switch(i){
            case 8;
                //System.out.println("2");
                //break;
            cast 3:
                //System.out.println("3");
                //break;
             case 2 :
                System.out.println("8");
            case 9:
                System.out.println("9");
                break;
            default:
                System.out.println("error");
            }
    }
}

方法

Java的方法类似于其它语言的函数,是一段用来完成特定功能的代码片段,声明格式:

  [修饰符1 修饰符2 .】返回值类型 方法名(形式参数列表){

    Java语句:... ... ...

  形式参数:在方法被条用时用于接收外界输入的数据。

  实参:调用方法时实际传给方法的数据。

  返回值:方法在执行完毕后返还给调用它的环境的数据。

  返回值类型:事先约定的返回值的数据类型,如无返回值,必须给出返回值类型void。

  Java语言中使用下述形式调用方法:对象名,方法名(实参列表)

  实参的数目、数据类型和次序必须的所调用方法声明的形参列表匹配,

  return语句终止方法的运行并指定返回的数据。

  Java中进行函数调用中传递参数时,遵循传递的原则:

  基本类型传递的是该数据值本身。引用类型传递的是对对象的引用,而不是对象本身。

例子:

public class TestMethod{
    public static void main(String[] args){
        m();
        m2(2);
        m3('3',4);
        m4(4, 6);
        int i = m4(4, 6);
        System.out.println(i);
    }

    public static void m(){
        //return;
        System.out.println("ok");
        System.out.println("hello");
   }

    public static void m2(int i){
        if(i > 3)
            return;
        System.out.println(i);
    }

    public static void m3(int i ,int j){
        System.out.println(i + j);
    }
    
    public static int m4(int i , int j){
        return i > j ? i : j;
}
}

猜你喜欢

转载自www.cnblogs.com/qnn108/p/11920560.html