Java中的操作符

(一)PyBullet机器人仿真入门:从环境搭建到实例解析 本文详细介绍了PyBullet机器人仿真平台从零开始的完整入门指南。内容涵盖环境搭建、官方示例解析、核心操作(连接、世界与模型)、关节控制与状态读取,以及碰撞检测、传感器模拟等高级功能,帮助读者快速掌握这一强大的机器人仿真工具。 阅读详情

Java中的操作符

赋值和地址引用

两者的区别

package com.cloud.day4;

public class Demo1 {

   public static void main(String[] args) {

      Fish f1 = new Fish();

      Fish f2 = new Fish();

      f1.count = 22;

      f2.count = 33;

      /*基本数据类型的赋值操作*/

      f1.count = f2.count;

      f1.count = 55;

      System.out.println(f1.count); //55

      System.out.println(f2.count); //33

      /*引用类型的地址传递操作*/

      f1 = f2;

      f1.count = 66;

      System.out.println(f1.count); //66

      System.out.println(f2.count); //66

   }

}

class Fish{

   int count;

}

 

名称混调问题

package com.cloud.day4;

public class Demo2 {

   static void getA(Level e1){

      e1.a = 22;

   }

   public static void main(String[] args) {

      Level e2 = new Level();

      e2.a = 33;

      System.out.println(e2.a); //33

      getA(e2);

      System.out.println(e2.a); //22

   }

}

class Level{

   int a;

}

基本操作符

数值运算

package com.cloud.day4;

public class Demo3 {

   public static void main(String[] args) {

      /*整数的除法会直接去掉小数部分*/

      System.out.println(3/2);  //1

      System.out.println(10/3);  //3

      /*改变变量的正负*/

      int x = 22;

      int y = 0;

      System.out.println(y = -x); //-22

      System.out.println(y = (-x)*10);  //-220

      /*自增自减:在前先运算,在后后运算*/

      int i = 1;

      System.out.println("i:"+ ++i); //2

      System.out.println("i:"+ i--); //2

   }

}

 

关系运算

package com.cloud.day4;

public class Demo3 {

   public static void main(String[] args) {

      /*基本的变量之间的比较*/

      int x = 2,y = 3;

      System.out.println(x = y);  //3

      System.out.println(x == y);  //true

      System.out.println(x != y);  //false

      /*对象之间的比较: '=='值和地址的引用都要相同*/

      Integer i1 = new Integer(33);

      Integer i2 = new Integer(33);

      System.out.println(i1 == i2);  //false

      System.out.println(i1 != i2);  //true

      /*单纯的比较对象的值*/

      System.out.println(i1.equals(i2)); //true

      /*equals的本质:不同的类覆盖的equals不同*/

      Test t1 = new Test();

      Test t2 = new Test();

      t1.i = t2.i = 66;

      //没有覆盖equals方法

      System.out.println(t1.equals(t2));  //false

   }

}

class Test{

   int i;

}

条件中断

package com.cloud.day2;

public class Demo1 {

   public static boolean test1(int t1){

      System.out.println("test1");

      return t1<1;

   }

   public static boolean test2(int t2){

      System.out.println("test2");

      return t2<2;

   }

   public static void main(String[] args) {

      /*test1、test2、&&*/

      if(test1(0)&&test2(1)){

        System.out.println("&&");

      }

      /*test1、|| 这里的第二个条件就没有执行*/

      if(test1(0)||test2(1)){

        System.out.println("||");

      }

      /*test1、test2、||*/

      if(test1(2)||test2(1)){

        System.out.println("||");

      }

   }

}

位运算操作

基本概念

概念:就是逢二进一就是二进制,二进制只有两个数,0和1,简单易于电子方式的实现,

     同时0和1的组合可以表示任意一个数

 

基础:

一个整形int占4个字节

每个字节占8位

一个汉字占两个字节

原码、反码、补码

1.      原码

用二进制表示一个数,这个码就是原码

1--à原码是   00000000 00000000  00000000  00000001 表示1*2的0次方就是1

       00000000 00000000  00000000  00000101  表示1*2的0次方 + 0*0的1次方 +1*2的2次方  1+0+4=5 这个码就表示5

2.      反码

3.      补码

 

A. 二进制的最高位是符号位,1表示负数,0表示正数

B. 正数的原码,反码,补码都是一样的

C. 负数的反码=他原码的符号位不变,其余取反,1变0,0变1

-1原码  10000000 00000000 00000000000000001  开头的1表示负数

-1反码  11111111 11111111 11111111111111110

-1补码  11111111 11111111 11111111111111111

D. 负数的补码=它反码 +1

E.  0的反码,补码都是0

F.  在计算运算的时候都是以补码的方式运算的

位运算规则

案例:

1.       ~2=??

步骤:

计算机预算补码

整数原码,补码,反码都是一样的

2的原码

00000000  00000000 00000000  00000010

 

~2,按位取反:

11111111  11111111 11111111  11111101  负数

 

推出反码(补码—1)

11111111  11111111 11111111  11111100

 

推出其原码(符号位不变)

10000000  00000000 00000000  00000011

 

结果就是  —3

 

2.      ~-5=??

步骤:

-5原码:

10000000  00000000 00000000  00000101

-5反码:

11111111  11111111 11111111  11111010

-5补码:

11111111  11111111 11111111  11111011

~-5取反:

00000000  00000000 00000000  00000100  是正数,原码,反码,补码一样

结果是:4

3.      2&3,两个都是1才是1

步骤:

2的补码:00000000 00000000  00000000  00000010

3的补码:00000000 00000000  00000000  00000011

2&3:    00000000  00000000 00000000  00000010 补码运算,还是补码

结果:2

4.       2|3,一个为1就是1

步骤:

2的补码:00000000 00000000  00000000  00000010

3的补码:00000000 00000000  00000000  00000011

2|3:    00000000  00000000 00000000  00000011

结果:3

5.      2^3,一个是0,一个是1,结果才是1

步骤:

2的补码:00000000  00000000 00000000  00000010

3的补码:00000000 00000000  00000000  00000011

2^3:    00000000  00000000 00000000  00000001

结果:1

移位运算

类型:   <<(左移)   >>(右移)

运算规则:

算术右移:低位溢出,符号位不变,并用符号位补溢出的高位

案例:  1>>2

1的补码:00000000  00000000 00000000  00000001

1>>2     00000000  00000000 00000000  00000000

结果:0

 

算术左移:符号位不变,低位补0

案例:

1<<2

1的补码:

00000000 00000000  00000000  000000001

向左移动:

00000000 00000000  00000000  000000100

结果:4

三元操作符

package com.cloud.day2;

public class Demo2 {

   static int test(int i){

      if(i>5){

        return i-5;

      }else{

        return i+5;

      }

   }

   public static void main(String[] args) {

      int result = test(6);

      System.out.println(result);

   }

}

操作符的错误使用

逻辑判断和赋值

int x=2,y=2;

if(x=y){}

while(x=y){}

类型转换

package com.cloud.day2;

public class Demo2 {

   public static void main(String[] args) {

      int x=2,y=2;

      long lg = x;

      System.out.println("自动类型转换:"+lg);

      y = (int) lg;

      System.out.println("强制类型转换:"+y);

   }

}

C# 上位机之海康工业相机开发(SDK)实战教程 海康工业相机的C#开发核心是基于MVS SDK的“初始化→枚举→连接→采集→释放”流程,其中图像回调处理和格式转换是关键。严格按照SDK文档处理设备类型(网口/USB)和像素格式;及时释放图像资源,避免内存泄漏;错误码是排查问题的重要依据(可参考SDK中的“错误码说明”文档)。掌握这些基础后,可结合机器视觉算法(如OpenCV)实现缺陷检测、尺寸测量等高级功能,构建完整的工业视觉系统。 阅读详情

相关推荐

Nacos2.3.0与vastBase数据库的集成实践指南

本文详细介绍了将Nacos 2.3.0的默认数据库从MySQL迁移至vastBase数据库的完整实践指南。内容涵盖前期环境准备、源码改造、依赖配置、SQL适配、数据库初始化以及最终的编译打包与部署验证,旨在帮助开发者在国产化或特定技术栈场景下,实现微服务配置中心与vastBase数据库的自主可控集成。

plant的博客 273

Java中的“>”、“>>”、“>>>”三个符号的区别

Java中的“>”、“>>”、“>>>”三个符号的区别概述“>”的使用“>>”的使用“>>>”的使用 概述 在读jdk源码时, 我们不难发现,有很多关于运算的编码我们在日常开发中,很少运用到,特别是专注于J2EE开发的朋友们,运算 的世界里,永远和进制挂钩,当然我们这就不赘述太多。 “>”的使用 这个符号在小学就应该知道...

随机字符串的专栏 3257

Lm317电压源芯片制作电流源

还在找电流源芯片么?如何使用电压源芯片快速搭建电流源。

Ekko的博客 1万+

Java中操作符

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Java中控制执行流程前言一、运算符的种类二、运算符的使用1.赋值(=)2.算术运算符 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 一、运算符的种类 算术运算符:+,-,*,/,%,++,– 赋值运算符:= 扩展后的赋值运算符:+=,-=,*=,/=,%=,&=,|=,^=,<<=

SOLDIER_ON的博客 813

Mendix 开发实践指南|Mendix平台概览

低代码开发是一种将编码从文本形式转变为视觉形式的应用开发方法。它提供了一个模型驱动的、拖放式的界面,而不是传统的编码环境,使得各种技能水平的开发者——包括专业开发人员、新手、主题专家、业务利益相关者和决策者——都能使用低代码工具来构建驱动价值的企业业务应用。低代码的核心在于提高开发的可访问性和效率,让更多人能够参与到应用开发中来​​。Mendix适用于多种应用场景,包括企业级应用、移动应用、物联网(IoT)应用和微服务架构等。

多年搬砖的经验分享... 4413

复现论文报错解决

博主复现论文代码过程中遇到的各种报错及解决方案~

rellvera的博客 1059

Java之操作符

java的操作符 操作符全 特殊操作符 字符操作符 类型转换

qq_48666555的博客 2126

机器学习笔记:估算模型训练所需的样本量的方法

相反,如果训练得分高而交叉验证得分低,那么模型可能存在过拟合问题,需要更多的样本来提高泛化能力。本文将介绍一些常用的方法来估算模型训练所需的样本量,并提供相应的源代码。除了经验法则和学习曲线法,还有一些统计学方法可以用于估算模型训练所需的样本量。学习曲线是一种通过绘制模型性能与样本量之间的关系曲线来估算样本量的方法。需要注意的是,这些方法仅提供了估算样本量的指导,具体的样本量仍然需要根据实际情况进行调整和优化。通过合理估算样本量,可以提高机器学习模型的性能和泛化能力,从而更好地应用于实际问题中。

HnrzLinux的博客 2732

Java【操作符】

算术操作符、位操作符、关系操作符、逻辑操作符、三元条件操作符、赋值操作符

在下的博客 1686

【Unity3D开发小游戏】《打地鼠游戏》Unity开发教程

文章目录一、前言二、源码三、正文版本1、相机设置2、洞口设置3、洞口脚本4、鼹鼠5、鼹鼠动画6、鼹鼠碰撞器7、鼹鼠脚本8、击中鼹鼠的效果9、实现击中效果10、增加更多的洞口 一、前言 让我们使用Unity3D开发一个打地鼠游戏吧。 打地鼠游戏是一个非常有趣的街机游戏,是在1976年左右发明的。 游戏的主要玩法就是打击从洞里出来的鼹鼠,玩家击中鼹鼠的速度越快,得分就越高 我们将讲解制作游戏的所需的每...

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 8460

【异常】飞书OpenClaw机器人 HTTP 401: Invalid Authentication 报错排查与解决方案

HTTP 401 是HTTP协议标准定义的未授权(Unauthorized)状态码,核心含义为请求方身份认证无效,服务端拒绝执行本次请求。飞书开放平台服务端对自建机器人的全链路鉴权校验失败。无论是机器人接收飞书事件推送的上行请求,还是机器人主动调用飞书开放平台API的下行请求,只要身份凭证无效、鉴权逻辑校验不通过,飞书服务端就会返回该报错,并最终透传到飞书客户端会话窗口中。

奶爸的编程之路,也就一周冷个三天 3759

Java操作符

关于操作符前言优先级赋值算数操作符自动递增和递减关系操作符逻辑运算符 前言 操作符作用于操作数,生成一个新值。几乎所有的操作符都只能操作 “基本类型”。但是 “=”, “==”, “!=”, 这些操作符能操作所有的对象。 优先级 当代码中一个表达式有多个操作符时,操作符的优先级决定了各部分的计算顺序。最简单的规则就是先乘除后加减。基本顺序归纳如下: 名称 符号 分隔符 . [] (...

f381226200的博客 1131

【WRF工具】WRF 模型输出可视化工具 RIP4

【WRF工具】WRF 模型输出可视化工具 RIP4

WW、forever的博客 1594

Java 操作符:Java 中操作符优先级、一二三元操作符及逻辑操作符的中德模佛定理

在 Java 中我们常见的操作符分为三种,分别是逻辑操作符、关系操作符、算术操作符,其优先级和结合规则确定了操作符计算的顺序,那么你会具体运用它们吗?又有哪些注意事项呢?它们各自的优先级又该如何区分呢?德模佛定理又该如何应用呢?本文来带你详细了解。

白鹿第一帅的 优快云 博客 2393

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

java 操作符

在最底层,Java中的数据是通过使用操作符来操作的 1.更简单的打印语句 System.out.println() 静态导入新类库,可以简化打印语句 import static net.mindview.util.print.* println(); 2.使用Java操作符     操作符接受一个或多个参数,并生成一个新值。 3.优先级 当一个表达式中存在多个操作符时,操作符的优

不积跬步无以至千里,不积小流无以成江海 1427

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

java操作符_Java常见操作符

Java常见操作符Java,操作符自动递增和自动递减前缀式:操作符在变量前。先进行运算,再生成值。后缀式:操作符在变量后。先生成值,再进行运算。关系操作符== , != ,equals 默认比较的是对象的引用,不是对象的内容。三元操作符Boolean-exp ? value0 : value1Boolean-exp值为真计算value0,为假计算value1。截尾和舍入Java中对flo...

weixin_34093899的博客 495

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

java 操作符_java基础之操作符

Java中的数据通过操作符进行一系列运行、赋值。操作符的使用对象:基本类型 &&( " = " 、“ == ”、“ != ” 这些操作符能操作所有的对象) && (String类支持“ + ” 和 " += ")操作符的使用顺序:即优先级。符合数学运算规则,先乘除后加减;为避免错误,最好使用括号,来明确运算顺序;操作符分类一、赋值“ = ” 例:a=b ...

weixin_42524945的博客 199

java操作符

java操作符1 使用java操作符2 优先级3 赋值操作符 "="4 算术运算符4.1 一元加、减操作符5 自动递增或递减6 关系操作符6.1 测试对象的等价性7 逻辑操作符7.1 短路8 直接常量8.1 指数计数法9 按位操作符插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 1 使用j

tataoto的博客 319

java操作符_java中操作符的用法

5.操作符public class Test{public static void main(String[] args){int i, k;i = 10;/*下面一句话的意义是:假如i小于零,k就等于-i,否则k就等于i*/k = i < 0 ? -i : i; // get absolute value of iSystem.out.print("Absolute value of ")...

weixin_29662775的博客 157

java 操作符_java基础之操作符

在各个语言中都会设及到我们的数据操作运算,无论是java还是其他语言中。操作符主要包含算术操作符,位操作符,比较运算符,逻辑运算符,关系运算符。我们使用操作符就是为了帮助我们进行运算的操作的流程。我们在程序中使用是比较的多的对于操作符,所以我们需要好好的了解一些操作符这个知识点,下面我们将进行具体的介绍:操作符:运算符指明对操作数的运算方式。组成表达式的Java操作符有很多种。运算符按照其要求的操...

weixin_39926191的博客 117

Java之操作符学习

  今天继续我的“java从入门到放弃”之路

lei2014lei的博客 235

java基础之操作符

java中的操作符(operator) 1)赋值操作符: = 例如: int x=0,i=1,j=1; *= 例如: a*=b 等价于 a=a*b /= 例如: a/=b 等价于 a=a/b; %= 例如: a%=b 等价于 a=a%b; += 例如: a+=b 等价于 a=a+b; -= 例如: a-=b 等价于 a=a-b; 其他的都是类似情况 a+=1; a++ 特殊情况:i++ 和 ++i i++表示先使用i的值,然后再让i自增1。 +

qq_43398175的博客 2927

java操作讲解,关于java的各种操作符学习讲解,java操作符讲解

关于java的各种操作符学习讲解,java操作符讲解1、算术操作符:+,-,*,/,%,其中整数的除法会直接去掉结果的小数位,不会四舍五入。2、自动递增递减:++,--,运算符放在数值前和后面是有区别的,放在前面,会先运算,再生成值,放在后面,先取值再运算。3、关系操作符:>,=,==,!===和!=也可以用来比较对象的引用,而不是比较对象的实际内容。可以使用equals()方法来比较对象的...

weixin_36012215的博客 155
上一篇: javaScript中Dom编程
下一篇: Java系统中异常封装处理
午-夜
博客等级 码龄12年 95粉丝 133原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值