java运算和方法

一、java运算符

image-20220114151329153

1、算术运算
package operator;

public class a {
    public static void main(String[] args) {
        int a = 10;
        int b = 100;
        int c = 2;
        int d = 12;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/((double)b));
        //double强制转换,防止小数舍入
    }
}

自增:++

自减:–

package operator;

public class b {
    public static void main(String[] args) {
        int a = 10;
        int b , c;
        b = a++;
        //先把a的值赋予给b,a再自增
        c = ++a;
        //先把a自增,再把a的值赋予给b
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
}

concle
    a = 12
    b = 10
    c = 12
2、逻辑运算符

与:&&

或:||

非:!

package operator;

public class c {
    public static void main(String[] args) {
        boolean a = true;
        boolean b = false;
        System.out.println("a && b : " + (a&&b));
        /*字符串拼接的时候,直接输出内容不同于python的 " " 和' '都可以,只能用双引号 " " ,中间           使用 + 连接*/
        System.out.println("a || b : " + (a||b));
        //+ 后面内容必须添加()才能识别
        System.out.println("!(a&&b) : "+ !(a&&b));
    }
}

短路运算

一些逻辑运算,每行代码执行从左到右,若执行中断,则每行后续代码不执行

package operator;

public class d {
    public static void main(String[] args) {
        int a = 5;
        boolean b = (a<4)&&(a++<4);
        System.out.println(a);
        //由于b在与符号前面就定义为false,后面没有执行,a没自增
        System.out.println(b);
    }
}
concle
    a = 5
    b = false
3、位运算符

^:异或,相同为零

<< :左移 >> :右移

package operator;

public class e {
    public static void main(String[] args) {
        int a = 2;
        System.out.println(a<<3);
        //二进制的展开右移三位
    }
}
concle
    16
4、三元运算符

?: a ? b : c ,当a为真(true),取b值,当a为假(false),取c值

package operator;

public class e {
    public static void main(String[] args) {
        int a = 2;
//        System.out.println(a<<3);
        int b = 10;
        a += b;//a = a + b
        System.out.println(a);
        System.out.println(a+b);
        System.out.println(""+a+b);
        //拼接字符串时,若运算之前出现字符(包括空字符),则转换为拼接,后续+为拼接运算
        System.out.println(a+b+"");
        //若先运算,再出现字符(包括空字符),正常运算
        int c = b < 10 ? 1 : 2;
        //三元运算符,b<0,为真,则c=1,反则c=2
        System.out.println(c);
    }
}
concle
    a = 12
    a + b = 22
    ""+a+b = 1210
    a+b+"" = 22
    c = 2
二、java方法

函数

1、方法定义使用

image-20220115152531327

package functiion;

public class a {
    // void不用返回值,int返回值,类似c语言
    public static void main(String[] args) {
        int a = add(1,2);
        //1,2 为实参
        System.out.println(a);
    }
    //方法(函数)
     public static int add(int a,int b) {
         //加入static,变为类变量,类中其他部分可以直接调用
         //int a , int b 为形参
        return a + b;
     }
}
package functiion;

public class b {
    public static void main(String[] args) {
        int a = compare(1,1);
        System.out.println(a);
    }
    //比大小函数
    static int compare(int a,int b) {
        int c = 0;
        if (a == b) {
            System.out.println("a = b");
            return 0;
            //return 0 有终止函数的功能,出现这个时,输出0,停止函数
        }
        else if(a > b) {
            c = a;
        }
        else {
            c = b;
        }
        System.out.println("return 0");
        //验证return 0的终止功能

        return c;
    }
}
concle
    a = b  : a = b  0
    a > b  : return 0  a
    a < b  : return 0  b
2、方法重载

一个类中的方法可以重名,参数不同(类型、数量)

image-20220115161157485

    static void a(int a,int b){

    }
//void 换成 int不行
    static void a(float a,float b){

    }
    static void a(int a,int b,int d){

    }
3、可变参数
package functiion;

public class d {
    public static void main(String[] args) {
        int a;
        a = add(1,2,3,4,5,6,7,8,9,10);
        //可变参数,随便加
        System.out.println(a);
    }
    static int add(int...i){
        //类型...变量名表示可变参数,只能放在变量最后当最后一个变量,存储结构为数组
        int a = 0;
        for (int j=0;j<i.length;j++){
            a += i[j];
        }
        return a;
    }
}
4、递归

image-20220115165957685

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值