首页 > 学院 > 开发设计 > 正文

Java基础--基础语法2

2019-11-14 11:48:41
字体:
来源:转载
供稿:网友

1.运算符

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

扩展:+=,-=,*=,/=,%=            a+=b即是a=a+b

关于算术运算的一个小程序:

    public static void main (String[] array){        int i1 = 10, i2 = 20;        int i =(i2++);                                    //i2++的含义i先取i2的值,然后在对i2进行+1        System.out.PRint("i="+i);                   //此时i=20,i2=21        System.out.println(" i2="+i2);        i =(++i2);                                         //++i2的含义先对i2加1,然后在赋值给i        System.out.print("i="+i);        System.out.println(" i2="+i2);         //此时i=22,i2=22        i = (--i1);        System.out.print("i="+i);        System.out.println(" i1="+i1);        i = (i1--);        System.out.print("i="+i);        System.out.println(" i1="+i1);    }结果:

i=20  i2=21i=22  i2=22i=9    i1=9i=9    i1=8

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

逻辑运算符:!非,&与,|或,^异或(相同为0相异为1),&&短路与,||短路或

短路与和或,与,与或的区别:i=1,j=2;booleanflag=(i>3)&&((i+j)>5)//第二个操作数不再计算,因为第一个操作数已经能够判断出flag的值

 a b !a a&b a|b a^b a&&b a||b
 1 1 0 1 1 0 1 1
 1 0 0 0 1 1 0 1
 0 1 1 0 1 1 0 1
 0 0 1 0 0 0 0 0

位运算符:&,|,^,~,>>,<<,>>>不是重点

赋值运算符:=

字符串连接符:+

int id = 800+90;

String s= "hello"+"world";

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

当进行打印时,无论任何类型,都自动转为字符串进行打印

int c = 12;

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

结果是c=12;12为字符型

三目运算符

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

ine x = -100;

int flag = x>0?1:(x==0?0:-1);

flag = -1;运算从括号里开始运算

2.语句

条件语句

if

if…else

if…else if

if…else if…else if…else

循环语句

1.for(表达式1;表达式2;表达式3)

首先计算表达式1,接着执行表达式2,若表达式2的值=true,则执行语句,接着计算表达式3,在判断表达式2的值;以此重复下去,直到表达式2的值=false

2.while(逻辑表达式){语句}

先判断逻辑表达式的值。若为true,则执行后面的语句,然后再次判断条件并反复执行,直到条件不成立为止。

3.do{语句}while(逻辑表达式);

先执行语句,再判断逻辑表达式的值,若为true,在执行语句,否则结束循环

public static void main (String[] array){  int i = 0;  while(i < 10){   System.out.print(i+" ");   i++;  }  i = 0;  do{   System.out.print(i+" ");   i++;  }while(i < 10); }结果为:

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 

4.break和continue

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

    public static void main (String[] array){        int stop = 4;        for(int i = 1; i <=10;i++){            if(i == stop)break;                         //当i=stop时,退出循环            System.out.println(" i= " +i);        }    }结果为:

i=1;

i=2;

i=3;

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

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

结果是:

i=1i=2i=3i=5

循环语句举例,求101到200之间的质数

    public static void main (String[] array){        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);        }    }

结果是: 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173179 181 191 193 197 199

 

5.switch语句

switch(){

case xx:

……

case xx:

……

default:

……

}

(1).小心case穿透,后面跟上break;

(2).多个case可以合并到一起;

例:

int i = 8;switch(i){    case 8:    case 3:    case 2:    System.out.printIn("A");    break;    ……}结果是:A

(3).default可以省略,但不推荐省略

(4).java中switch语句只能探测int类型值

3.方法

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

[修饰符1  修饰符2  ……]返回值类型  方法名 (形式参数列表){java语句;……}

形式参数:在方法被调用时用于接收外界输入的数据。         //车间需要的东西的类型

实参:调用方法时实际传给方法的数据。                              //给车间实际生产的材料

返回值:方法在执行完毕后返回给调用发的环境的数据。      //车间返回的产品

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

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

实参的数目,数据类型和次序必须和所调用的方法声明的形参列表匹配,return语句终止方法的运行并指定要返回的数据。

java中进行函数调用中传递参数是,遵循值传递的原则:基本类型传递的是该数据值本身。引用类型传递的是对对象的引用,而不是对象本身。

例如:

    public static void main (String[] array){        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;    }结果为:

okhello2556

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表