1.byte值的问题:

byte b1=127;

byte b2=(byte)128; //-128

byte b3=(byte)129; //-127

byte b4=(byte)130; //-126

byte的范围:-128 ~ 127,

128:10000000

-128:10000000(这里1既是符号位,也是数值位)。

2.数据类型转换之默认转换:

只要参与运算就会被提升为int。

byte、short、char -- int -- long -- float -- double,

long:8字节,float:4字节。

它们的底层存储结构不同,浮点数转成小数的二进制去运算,

17.625换算成二进制10001.101,

整数部分,除以2,直至商为0,余数反转,

小数部分,乘以2,直至乘为0,进位顺序取。

在将10001.101右移,直至小数点签只剩1位,1.0001101*2^4,因为右移了四位。

float表示的数据范围比long的范围要大,

long,2^63-1,

float,3.4*10^38 > 2*10^38 > 2*8^38 > 2*2^3^38 = 2*2^114 > 2^63-1。

Java语言中的字符char可以存储一个中文汉字,因为Java语言中字符占两个字节,

Java采用的是Unicode编码。

3.运算符:

运算符是对常量和变量进行操作的符号。

分类,算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、三目运算符。

整数相除只能得到整数,要得到小数,只需要将操作的数据中任意一个数据变为浮点数。

x*1.0/y,既不改变数值,又能得到浮点数。

++、--运算符的使用,

单独使用,放在操作数前后效果一样,

参与运算使用,放在操作数前,先自增自减,再参与运算,放在操作数后,先参与运算,再自增自减。

int x=4; int y=(x++)+(++x)+(x*10); 4+6+60=70。

字符串连接符(+),

System.out.println("hello"+'a'+1); //helloa1

System.out.println('a'+1+"hello"); //98hello

扩展的赋值运算符其实隐含了强制类型转换,s+=1;是不等价于s=s+1;的,

而是等价于s=(s的数据类型)(s+1);。

&前后是数字,做位运算、前后是布尔值,做逻辑运算,其它同理。

&逻辑与,|逻辑或,^逻辑异或,!逻辑非。

&&相比&具有短路作用,左边是false,右边不执行,所以程序执行效率高于&,||与|同理。

位运算符,&(有0则0)、|(有1则1)、^(同则0不同则1)、~(按位取反),<<、>>、>>>。

交换两个变量的值,

用位异或实现,a=a^b; b=a^b; a=a^b; ,

用变量相加实现,a=a+b; b=a-b; a=a-b; ,

一句话搞定,b=(a+b)-(a=b); 。

位移运算符,

<<左移,左边最高位丢弃,右边补齐0,

>>右移,最高位是0,左边补齐0,;最高位是1,左边补齐1,

>>>无符号右移,无论最高位左边是0还是1,左边补齐0。

<<,把<<左边的数据乘以2的移动次幂,>>,把>>左边的数据除以2的移动次幂,

最有效率的2*16的方式,即2<<4。

单目运算符(~3),双目运算符(3+4),

三目运算符,比较表达式?表达式1:表达式2,返回true,执行表达式1,返回false,执行表达式2。

三个数比较大小,一步搞定,

int max=(a>b)?((a>c)?a:c):((b>c)?b:c); ,

boolean flag=(m==n)?true:false; 比较两数是否相同。

4.键盘录入:

导包,import java.util.Scanner;

创建键盘录入对象,Scanner sc=new Scanner(System.in);

通过对象获取数据,int x=sc.nextInt(); 。

5.流程控制语句:

流程控制语句分3类,顺序结构、选择结构、循环结构。

转载于:https://blog.51cto.com/xiaozhuan2016/1866448

自学Java-运算符相关推荐

  1. java自学——java的基本讲解和变量、字符串、运算符的简单介绍

    java自学--java的基本讲解和变量.数组.字符串.运算符的简单介绍 hello world程序 java程序的结构 java语句的组成介绍 关键字 标识符 标识符的命名规则 分隔符 注释符 空白 ...

  2. 结合大学四年经验,带你揭秘高效自学Java的方法和路线(从认识、方法、反馈3个角度出发)

    首发公众号:bigsai 收藏不是真支持,点赞.关注三连才是真支持! 前言 大家好,我是bigsai 好久不见,甚是想念,文章同时收录在回车课堂.本文就自学Java的n个问题和n个方法做出一些建议,并 ...

  3. java如何对一个表达式开根号_作为一个零基础的新手,如何系统的自学Java和JavaEE开发技术?...

    0基础就找资料学习吧,建议不要看书,选择视频更好,对于新手来说,书本如果在没有人指导之下去看基本上很难看懂 在你学习Java之前一定要去了解一下这门语言,千万不要脑子热就选择来这行 如何系统的自学Ja ...

  4. 电脑编程入门自学java_电脑编程入门自学Java指南

    随着Java近些年来的强劲发展,想要转行学习Java的初学者也越来越多了.然而,入门自学Java并不是一件轻松的事情.众所周知,万事开头难,尤其是没有编程语言基础的学习者,不仅仅需要付出更多的心血和汗 ...

  5. 自学 java如何入门?

    玩Java多年的老司机带你上车全面系统学习Java,并且还能教你如何学习才能在今年拿到一份不错的offer. 说到系统全面,就是以目前绝大部分公司招聘要求的知识内容为基准,毕竟我们学习Java都是为了 ...

  6. 自学Java如何正确入门?

    前言 说到系统全面,就是以目前绝大部分公司招聘要求的知识内容为基准,毕竟我们学习Java都是为了高薪工作,<史记>中说"天下熙熙皆为利来,天下攘攘皆为利往",为了高薪工 ...

  7. 垃圾大学,想自学 Java 可以吗?难吗?毕业后能找到一份 6k左右的工作吗?

    前几天在头条上收到一条私信,内容大致是这样的:"我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?" 不知道有没有人有类似的问题, ...

  8. 前几天在头条上收到一条私信,内容大致是这样的:“我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?”

    前几天在头条上收到一条私信,内容大致是这样的:"我学校比较垃圾,想自学 Java 可以吗?自学 Java 难吗?毕业后能找到一份 6k左右的工作吗?" 不知道有没有人有类似的问题, ...

  9. java自学能学会吗_自学java能学会吗?有没有捷径能尽快学会?

    作为一种灵活多变,前景可瞻,又易学习的编程语言,Java备受年轻人关注,很多开发爱好者,或者想从事Java开发的年轻人放出豪言"我要自学Java,拿高薪,走上人生巅峰" 但是:Ja ...

  10. 自学java的难度_自学java难不难 搞定这十三步就够了

    自学java难不难,对不同的人来说可能不一样,有着编程基础的来说,相对容易.如果是完全小白,就会稍微困难点,下面总结了十三步来自学java的步骤. 第1步:自学JAVA的开发环境配置.开发首个Java ...

最新文章

  1. bootstrap之div居中
  2. Python2.7连接MySQL5.7 附demo
  3. 基于.Net 2.0 (C# 2.0, ASP.NET 2.0)的快速Web开发框架设计
  4. oracle 查看表结构约束,oracle 约束
  5. 【一】Drupal 入门之新建主题
  6. linux如何加设磁盘配额,Linux系统攻略:如何为添加的硬盘做配额
  7. 0010服务器无对应信息,服务器版本对应的内存
  8. python的图书管理项目教程_基于python图书馆管理系统设计实例详解
  9. 批量修改txt内容_不用再慢慢手动修改,用Excel批量修改文件名
  10. VS 2008的JavaScript代码提示功能 (学习老赵视频的笔记)
  11. python按键退出循环_Python的for循环退出
  12. Zoople HTML 编辑器组件 for NET
  13. opera安装java插件_欧朋浏览器Opera插件安装指南
  14. 张正友标定法过程推导笔记
  15. HTML段落前面怎么加黑点,Word文档段落前面的那个小黑点,是怎么搞出来得呀?...
  16. 让Win7做DHCP服务器
  17. 图片择优算法(模糊图片筛选出最清楚的图片) 没有使用第三方库
  18. 贝塞尔曲线(Bezier)之爱心点赞曲线动画效果
  19. 【Python实例】Python五分钟码出—女神颜值打分系统(人脸识别)!
  20. 免安装版的Mysql教程

热门文章

  1. 可溶于水的机器人见过吗?明胶和糖3D打印而成,现登Science子刊封面
  2. 树莓派10年销量4600万台!儿童玩具到工业设备它都可,创始人:最初只想造廉价电脑,不料第一天就卖出10万台...
  3. 体验首款Linux消费级平板,原来芯片和系统全是国产
  4. 如何让机器说话更像人?清华和京东的三位大牛给出答案 | CCF C³
  5. 第十三届光华工程科技奖公布,彭士禄、张伯礼、王海峰等40人及1个团体获奖
  6. 特斯拉自动驾驶新能力:识别红绿灯停车标识;尝鲜车主:实用好用
  7. AI同传效果媲美人类,百度翻译出品全球首个上下文感知机器同传模型
  8. 深挖之后吓一跳,谷歌AI专利何止一个dropout,至少30项今日生效
  9. 33 个 JavaScript 核心概念系列(三): 显式 (名义) 与 隐式 (鸭子)类型转换
  10. 机器视觉基础(2)---坐标与矩阵变换