运算符

运算符

Java语言支持如下运算符

  • 算数运算符:+,-,*,/,%(余),++,–

  • 赋值运算符:=

  • 关系运算符:<=,>=,>,<,==,!=instanceof(不等于)

  • 逻辑运算符:&&(与),||(或),!(非)

  • 位运算符:&,|,^,~,>>,<<,>>>(了解!!!)

  • 条件运算符?:

  • 拓展赋值运算符:+=,-=,*=,/=

package operator;

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);//int 类型下误差大。强制转换为double
    }
}
package operator;

public class Demo02 {
    public static void main(String[] args) {
        long a = 100000000;
        int b = 123;
        short c = 10;
        byte d = 8;
        double e = 3.14;
        System.out.println(a+b+c+d);//long 有一个数位long,则结果位long
        System.out.println(b+c+d);//int
        System.out.println(c+d);//int
        System.out.println(a+e);//double
        System.out.println(b+e);//double
        System.out.println(c+e);//double
        System.out.println(d+e);//double
        System.out.println(a+b+c+d+e);//double
        System.out.println(b+c+d+e);//double
        System.out.println(c+d+e);//double
    }
}
package operator;

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符返回的结果: 正确  错误    布尔值:true  fasle
        //if 如果
        int a = 10;
        int b = 20;
        int c = 21;
        System.out.println(a>b);//fasle
        System.out.println(a<b);//true
        System.out.println(a==b);//fasle
        System.out.println(a!=b);//不等于
        System.out.println(c%a);//取余   模运算
    }
}
package operator;

public class Demo04 {
    public static void main(String[] args) {
        //++ 自己增加   --自己减少   一元运算符
        int a = 3;
        int b = a++;//先赋值,后自增
        System.out.println(b);
        int c = ++a;//先自增,再赋值
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        //幂运算      很多运算会使用工具类使用
        double pow = Math.pow(2, 3);
        System.out.println(pow);


        System.out.println("=====================================================");
        int g = 3;
        int h = 4;
        int i = h++;
        int k = ++h;
        int o = ++g;
        System.out.println(o);
        System.out.println(i);
        System.out.println(k);
        System.out.println(h);

    }
}
package operator;
 //逻辑运算符
public class Demo05 {
     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));//逻辑或运算:一个为真,则结果为true
         System.out.println("!(a&&b):"+!(a&&b));//如果是真,则为假。如果是假,则为真

         //短路运算
         int c = 5;
         boolean d = (c<4)&&(c++<4);//如果前面为假,则后面不执行
         System.out.println(d);
         System.out.println(c);
     }


}
package operator;

import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;

public class Demo06 {
    public static void main(String[] args) {
    /*
    A = 0011 1100
    B = 0000 1101
    ------------------------
    A&B =0000 1100                     //与:相同为相同,不同则位0
    A|B =0011 1101                     //或:相同为相同,不同则为1
    A^B =0011 0001                     //异或:相同为0,不同为1
    ~B = 1111 0010                     //取反:0为1,1为0

    2*8 = 16  2*2*2*2
    <<:左移   *2
     >>:右移  /2
     */
        System.out.println(2<<3);
        System.out.println(16>>3);
    }


}
package operator;

public class Demo07 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        a+=b;//a = a+b
        a-=b;//a = a-b
        a*=b;//a = a*b
        a/=b;//a = a/b
        System.out.println(a);

        //字符串连接符    +  , String:字符串
        System.out.println(""+a+b);//字符串在算式前,则默认为字符串连接,不计算算式
        System.out.println(a+b+"");//字符串在算式后,则默认为算式,会进行计算



    }
}
package operator;

public class Demo08 {
    public static void main(String[] args) {
        //三元运算符
        //x ? y : z
        //如果x==true,则结果为y,否则结果为z

        int score = 50;
        String type = score < 60 ?"不及格":"及格";//必须掌握
        System.out.println(type);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图像识别技术在病虫害检测中的应用是一个快速发展的领域,它结合了计算机视觉和机器学习算法来自动识别和分类植物上的病虫害。以下是这一技术的一些关键步骤和组成部分: 1. **数据收集**:首先需要收集大量的植物图像数据,这些数据包括健康植物的图像以及受不同病虫害影响的植物图像。 2. **图像预处理**:对收集到的图像进行处理,以提高后续分析的准确性。这可能包括调整亮度、对比度、去噪、裁剪、缩放等。 3. **特征提取**:从图像中提取有助于识别病虫害的特征。这些特征可能包括颜色、纹理、形状、边缘等。 4. **模型训练**:使用机器学习算法(如支持向量机、随机森林、卷积神经网络等)来训练模型。训练过程中,算法会学习如何根据提取的特征来识别不同的病虫害。 5. **模型验证和测试**:在独立的测试集上验证模型的性能,以确保其准确性和泛化能力。 6. **部署和应用**:将训练好的模型部署到实际的病虫害检测系统中,可以是移动应用、网页服务或集成到智能农业设备中。 7. **实时监测**:在实际应用中,系统可以实时接收植物图像,并快速给出病虫害的检测结果。 8. **持续学习**:随着时间的推移,系统可以不断学习新的病虫害样本,以提高其识别能力。 9. **用户界面**:为了方便用户使用,通常会有一个用户友好的界面,显示检测结果,并提供进一步的指导或建议。 这项技术的优势在于它可以快速、准确地识别出病虫害,甚至在早期阶段就能发现问题,从而及时采取措施。此外,它还可以减少对化学农药的依赖,支持可持续农业发展。随着技术的不断进步,图像识别在病虫害检测中的应用将越来越广泛。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值