一、Java标识符命名规范

标识符:用来标识类名、对象名、变量名、方法名、类型名、数组名、文件名的有效字符序列;

合法的标识符:----字母、数字、下划线‘_’、美元符号‘$’组成;不能用数字开头,不能用关键字,对大小写敏感;

例:helloWord 、DateClass、_12345、$B25_C7等;

二、Java关键字

有一些专门的词汇,Java已经赋予了特定的含义,只能用于特定的地方,不能用这些词汇来定义标识符,

不能改变这些词汇的含义;

三、Java的八种数据类型

整数类型:byte 、short 、int 、long

浮点数类型:float 、double

布尔类型:Boolean

字符类型:char

数据类型应用:在声明变量时,要指明变量的类型,不同的类型在内存中分配的空间大小也不同

四、运算符

定义:用来表示数据的运算、赋值和比较

分类:算数运算符,赋值运算符,比较运算符,逻辑运算符,位运算符

1、算数运算符

2、赋值运算符

例:int a=2;int b=a+1等

3、比较运算符

4、逻辑运算符

5、位运算符

分为按位运算符和移位运算符

(1)、按位运算符

按位运算符是来操作整数基本数据类型中的单个“比特”(bir),即二进制位,位运算符会对两个参数中对应的位执行布尔代数运算,并最终生成一个结果。

1、“与”、“位与”(&)

按位“与”操作符,如果两个数的二进制,相同位数都是1,则该位结果是1,否则是0.

例1 5&4

5的二进制是  0000 0000 0000 0101

4的二进制是  0000 0000 0000 0100

则结果是        0000 0000 0000 0100  转为十进制是4。

2、“或”、“位或”(|)

按位“或”操作符,如果两个数的二进制,相同位数有一个是1,则该位结果是1,否则是0

例2  5 | 4

5的二进制是  0000 0000 0000 0101

4的二进制是  0000 0000 0000 0100

则结果是        0000 0000 0000 0101  转为十进制是5。

3、“异或、“位异或”(^)

按位“异或”操作符,如果两个数的二进制,相同位数只有一个是1,则该位结果是1,否则是0

例3  5 ^ 4

5的二进制是  0000 0000 0000 0101

4的二进制是  0000 0000 0000 0100

则结果是        0000 0000 0000 0001 转为十进制是1

4、“非”、“位非”(~)也称为取反操作符

按位“非”操作符,属于一元操作符,只对一个操作数进行操作,(其他按位操作符是二元操作符)。按位“非”生成与输入位相反的值,——若输入0,则输出1,若输入1,则输出0。

例4  ~5

5的二进制是  0000 0000 0000 0101

则~5是           1111 1111 1111 1010  转为十进制是 -6。

这里出现负数,强行插入一波^_^。

电脑的的世界中只有0和1,那么负数怎么表示呢?

二进制的正负是从高位看,最高位如果1则是负数,如果是0则是正数。

如果负数单纯是把最高位变为1的话,在运算中会出现不是我们想要的值,所以引入了:原码,反码,补码。正数的原码,反码,补码都一样,负数的反码是对除了符号位(最高位)对原码取反,补码是对反码+1

负数的二进制转化,计算机计算是用的补码

1、首先取出这个数的原码的二进制,

2、然后再求出反码

3、最后求出补码

例5  -5

-5的原码是                1000 0000 0000 0101

求出反码的是            1111 1111 1111 1010

求出补码是                1111 1111 1111 1011

--------------------- 本文来自 mxiaoyem 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/mxiaoyem/article/details/78569782?utm_source=copy

移位运算符操作的对象就是二进制的位,可以单独用移位运算符来处理int型整数。

(2)移位运算符

移位操作符操作的运算对象也是二进制的“位”。移位操作符只可用来处理整数类型,左移位操作符(<<)能按照操作符右侧指定的位数将操作符左边的操作数向左移动(在低位补0),“有符号”右移位操作符(>>)则按照操作符右侧指定的位数将操作符左边的操作数向右移。“有符号”右移位操作符使用“符号扩展”;若符号位正,则在高位插入0;若符号位负。则在高位插入1。java中增加了一种“无符号”右移位操作符(>>>),他使用“零扩展”;无论正负,都在高位插入0。这一操作符是C或C++中所没有的。

例6  5<<2 等于20

5的二进制是   0000 0000 0000 0101

左移两位         0000 0000 0001 0100

例7  5>>2 等于 1

5的二进制是   0000 0000 0000 0101

右移两位         0000 0000 0000 0001

例8  -5>>2 等于 -2

-5的二进制是   1111 1111 1111 1011

右移两位          1111 1111 1111 1110 转十进制,例5反着来,先-1,然后取反

如果对char、byte或者short类型的数值进行移位处理,那么在移位进行之前,它们会被转为int类型,并且得到结果也是一个int类型的值,只有数值右端的底5位才有用,这样可防止我们移位超过int类型所具有的位数,(因为2的5次方位为32,而int类型只有32位)。若对一个long类型的数值进行处理,最后得到结果也是long类型,此时只会用到数值右端的底6位,以防止移位超过long类型数值具有的位数。

“移位”可与“等号”(<<=或>>=或>>>=)组合使用。此时,操作符左边的值会移动由右边的值指定的位数,再将得到的结果赋值给左边的变量。但在进行“无符号”右移位结合赋值操作时,可能会遇到一个问题,如果对byte或short值进行这样的移位运算,得到的可能不是正确的结果。他们会先被转换成int类型,再进行右移操作,然后被截断,赋值给原来的类型,在这种情况下可能得到-1的结果

五、Java类型转换

1、自动类型转换

将一种类型的变量赋给另一种类型的变量时,只要满足以下条件,就可以自动转换类型

(1)两种类型兼容

(2)目标类型大于原类型   Byte~short~char~int~long~float~double

2、强制类型转换

强制转换用于显式类型转换。如果被转换的值的数据类型大于其目标类型就会丢失部分信息。

类型强制转换使程序将变量视为某种类型,尽管此变量中包含的是另一类型的数据。

由高----低示例:

char c=‘好’;

int b = (int) c;// 将 c 转换为整型

例如:

§char a=‘‘;  System.out.println(a);

§int b =(int)a;  System.out.println(b);22909

六、注释方法

1、//注释一行

2、/*注释中间所有内容*/

3、/**

*备注注释

*/

七、Java扫描器

定义声明:

Scanner sc = new Scanner(System.in);

在java.util包下面

使用方法:

整数类型:int a =sc.nextInt();大写的i

串类型:String s=sc.next();

字符类型:char c=sc.next().charAt(0);

Java基础篇(标识符、关键字、数据类型、运算符、类型转换、注释方法、扫描器)相关推荐

  1. 02 Java基础语法(变量+数据类型+运算符)

    Java基础语法 2 基础语法 2.1 二进制(复习总结) 进制转换(二进制 八进制 十进制 十六进制) 2.2 变量 2.2.1 变量定义 2.2.2 使用变量 2.2.3 声明变量的3种方式 2. ...

  2. 【JAVA基础篇】基本数据类型及自动类型转换

    一.8种基本数据类型以及占用内存空间大小 boolean  1byte或4byte byte        8bit/1byte char        16bit/2byte short      ...

  3. JavaSE 18 Java基础语法 → 标识符关键字

    4.2 标识符和关键字 4.2.1 标识符 标识符是 $.下划线和字母开头,然后又由下划线.字母.数字组成,不能有特殊符号,也不能是关键字!标识符 对大小写是 非常敏感的.(当然可以 使用 中文 命名 ...

  4. Java基础篇:简单数据类型

    Java定义了8个简单(或基本)的数据类型:字节型(byte),短整型(short),整型(int),长整型(long),字符型(char),浮点型(float),双精度型(double),布尔型(b ...

  5. Java基础篇:为Box类添加一个方法

    尽管创建一个仅包含数据的类是相当不错的事情,但这样的情况很少发生.大部分情况是你将使用方法存取由类定义的实例变量. 事实上,方法定义大多数类的接口.这允许类实现函数可以把内部数据结构的特定布局隐蔽到方 ...

  6. Java基础篇1——变量与数据类型

    Java基础篇1--变量与数据类型 1.标识符命名规则 标识符以由大小写字母.数字.下划线(_)和美元符号($)组成,但是不能以数字开头. 大小写敏感 不能与Java语言的关键字重名 不能和Java类 ...

  7. 菜鸟学习笔记:Java基础篇2(变量、运算符、流程控制语句、方法)

    菜鸟学习笔记:Java基础篇2 变量 基本概念 变量作用域 final关键字 运算符 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 条件运算符 运算符优先级 Java三种流程控制语句 顺序 ...

  8. Java基础篇2——运算符

    Java基础篇2--运算符 1.运算符 1.1.算数运算符 +表示加法运算符 -表示减法运算符 *表示乘法运算符 /表示除法运算符 %表示取余运算符 1.2.关系运算符 所有以关系运算符作为最终运算的 ...

  9. java基础篇_java基础篇1

    JAVA基础篇1 注释 单行注释 //这是一个单行注释,由两个斜杠组成,不能嵌套多行注释 多行注释 /*这是一个 多行注释 ,//里面不能嵌套多行注释, 但是可以嵌套单行注释*/ 文档注释 /**ja ...

  10. Android面试题Java基础篇

    Android面试题Java基础篇,由本人整理汇总,后续将继续推出系列篇,如果喜欢请持续关注和推荐,更多精彩内容可以关注微信公众号(Android高级编程):android-tech 系列文章目录: ...

最新文章

  1. (转载)Xcode中other linker flags的作用
  2. k8s和harbor的集成_爱威尔-基于kubernetes集群的项目持续集成(gitlab+harbor+Jenkins)安装...
  3. Intel Realsense Depth Quality Tool 相关参数
  4. [Elasticsearch2.x] 多字段搜索 (三) - multi_match查询和多数字段 译
  5. Codeforces Round #746 (Div. 2)
  6. 什么是SFP光模块?光模块知识介绍!
  7. AutoHomeRefreshListView仿汽车之家下拉刷新 《IT蓝豹》
  8. Python3.6下安装扩展库pywin32的正确姿势
  9. 搭建视频网站的技术方案
  10. 东大OJ-最大子序列问题的变形
  11. java连接oracle数据库jdbc
  12. catia二次开发:结构树文档,录制宏编程思路,遍历结构树,catia根对象窗体属性,打开导出文件,cameras工具条,viewer对象和截图,catia发送命令
  13. ubuntu20.04装机教程
  14. 把脉大连接:“多端协同”的大动脉与“多人协作”的主动脉
  15. Spark SQL: Error in query: undefined function错误的解决方法
  16. java查询ftp路径下所有文件名字
  17. wp7开发实例:Baby Sign Language
  18. 无代码五月大事件|微软低代码矩阵更新;多份行业报告发布...
  19. 胡适曾劝女作家苏雪林不要骂鲁迅
  20. 万事开头难,全英文???别怕有我!!!

热门文章

  1. python中repr()函数用法详解
  2. C++进阶之高质量代码编程
  3. 如何彻底关闭:Windows Defender Service
  4. 国内首场明星6DoF全虚拟VR演唱会有哪些新奇玩法和交互体验? #VR
  5. android jb,Camera JB+
  6. 信息系统项目管理师必背核心考点(四十二)SWOT分析法
  7. Angular2 ngOnChanges用法
  8. Pytorch自动混合精度(AMP)训练
  9. linux小工具之-ccat
  10. 如何对台式计算机 笔记本进行日常维护,笔记本电脑日常维护十项准则[详细介绍]...