2 注释,变量,数据类型,运算符

1注释、关键字、标识符

注释

给程序函数做注释方便理解,不影响程序运行

单行注释//

多行注释/*内容*/

文档注释/**文档*/     (生成文档使用,先不讲)

注释写中文前,先设置notepad++为ANSI编码,防止乱码

1

我们可以看见多行注释和单行注释的效果,颜色都变成绿色,看注释是否为多行或者单行来区别使用

关键字

关键字是java程序预设好有特殊意义的单词,如public,class,static,void,在图1notepad++里显示紫色,我们设置变量或者类名不能与其重复

2

关键字很多,学到哪里记到哪里

标识符

类名,变量名都可以成为标识符

类名和变量名可以由A-Z,a-z,0-9以及美元$、下划线组成,其中数字不可以开头,命名不能与关键字重复

一般类名首字母大写(几个单词拼接的,几个单词首字母大写)

方法名首字母小写,后面的单词首字母大写

这种命名法为驼峰命名,为了方面快速理解功能

2 数据(常量和变量)

数据是计算机程序拿来处理或者依据处理的对象,分为2类:

基本数据类型:整数,小数,字符,布尔

引用数据类型:数组,类,接口

常量

针对于变量,不变的数据称为常量

整数,又分为十进制,二进制,十六进制,八进制等等

小数,又称为浮点数

布尔,true,false,就2种

字符,单引号''包括起来,而且只能包括一个字符,可以是数字,字符(可以为汉字)

字符串,双引号""包裹起来,可以包括0到n个字符(包括数字汉字)

我们尝试写Demo1来输出常量

3

我们可以看到下图的结果,其中二进制和16进制都被转换成了10进制打印

4

我们输出字符串常量和bool

5
6

变量

相对于常量,会变化的数据称为变量,程序运行时,变量存储于内存中

内存简介

内存非永久存储,断电清空(相对于硬盘等永久存储设备),一个数据最小的数据为1个B=8bit,虽然可能布尔型0,1只用1个bit好像就能表示,但是也是用一个B来表示

变量基本类型(4类8种)

我们内存设定变量类型和大小觉得占据空间,具体如下图

7

整形:4种byte,short,int,long 分别占据1,2,4,8字节(上图中的表示范围为有符号情况)

浮点型:float,double分别占4,8字节(double精度高)

字符型:char 2字节

布尔:boolean 1字节

整形和浮点型选用哪种子类型根据实际使用范围,如果不特殊考虑范围,一般使用int,double

类型说明

100是常量,而且在byte范围内,但是我们认为其为int类型,除非我们提前指定了byte类型,

整数在java里没有指定类型,则默认为int,如果我们写一个大于int存储长度的数值则会报错提示溢出

如果我们指定数据类型为long,则需要加上L,如100L,231121312341L

浮点型java没特殊指定默认是double(可以结尾加D),如果需要指定float,需要结尾加上F,如3.14F,-1.234F

变量创建

变量三要素,类型,变量名,数值

如我们定义int类型,会给内存开辟4字节空间,但是我们需要知道存在哪里,通过变量名指定位置,数值是这个区域存储的数值,变量名还必须符合我们之前说的命名规则

8

这个demo尝试写定义几个变量,并去显示,这里注意long,float结尾需要加上L,F如果没写,大数long会报错,因为int只能表示到214746847,超过提示溢出,F没有写,会提示损失精度,因为默认是按double类型的小数

字符串变量

字符串变量是引用类型变量,不是之前讲的基本变量类型,我们定义字符串变量如下,String s = "xxx";注意是双引号结尾,还有我们需要习惯结束位置有双引号

9

变量定义的注意事项

1变量定义不赋值不能使用,否则会编译报错提示未初始化

我们可以先定义,用前初始化,但是建议最好开始定义赋值一起

2变量有作用域限制

作用范围在其定义的大括号内,且在定义之后

10

如上图的j定义只在{}包裹的区域内,但是下面尝试打印会报错,找不到符号

3变量重复定义

如下图我们定义了2次i,报错提示重复定义

11

变量类型转换

数据类型范围小的可以直接转为范围大的。

允许转换byte->short->int->long->float->double

类型自动转换

数据范围小的自动转换为范围大的

12

如上图,我们d赋值,右侧为int,左侧为范围大的double,赋值进行自动转换,我们打印可以看见结果是1000.0

强制类型转换

数据范围大的变成数据范围小的,需要手动指定转换,否则报错

这里有个公式实现转换

转换后类型  变量名 = (转换后类型) 被转换数据;

13

如上图,代码实现浮点型转换成整形(砍掉小数部分)

14

又如上图,我们给200强转给b,此时打印b结果是-56,不是200,这其实是数据溢出了,200-128=72

72的2进制1001000,首位1表示赋值,补码0110111+1=56

总结:强制转换没有具体需求不要做,容易丢失数据

3 运算符

算术运算符

15

+加法,连接符(遇到字字符串),正号(一般不写)

-减法,负号

*乘/除

%取模(得余数)

++自增,--自减,放在左右有区别,放在右,则是执行当前式子,再自增减,放在左则是先增减,在执行,符合从左到右的顺序

16

我们尝试打印加减乘除区域和拼接效果,其中除法因为2者都是整数所以默认得到的结果还是整数

拼接"123"遇到6就将结果拼接成字符串,后面同理,

5+5+"123"+5="101235",这里5+5因为都是整数可以加,遇到字符串再拼接

所以常用数字转字符串+""  (用空字符串拼接)

赋值运算符

17

=和+=,-=,*=,/=,%=几个,和python一样,且需要注意的是不能符号分开!!

18

这里需要注意的是,如果我们如上图操作,而不是使用a+=1,会报错,这是因为a为1字节,a+1会变成4字节

19

而我们使用a+=1不会报错,和使用强制转换一样效果,其实这是文档告诉我们的,默认就进行了强制转换

比较运算符

20

如图,运算式结果返回bool值

逻辑运算符

21

与或非& && |  ||  !  异或^,其中2个&&,||为短路与或,即有分别与逻辑遇到false和或逻辑遇到true就不再往下进行计算

22

demo如上

三元运算符

布尔表达式?结果1:结果2(满足返回结果1,否则结果2)

23
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,364评论 0 5
  • 1. 关键字 1.1 关键字概述 被Java语言赋予特定含义的单词 1.2 关键字特点 组成关键字的字母全部小写 ...
    JackChen1024阅读 608评论 0 2
  • 1 关键字 1.1 关键字的概述 Java的关键字对java的编译器有特殊的意义,他们用来表示一种数据类型,或...
    哈哈哎呦喂阅读 645评论 0 0
  • Java基础面试 Java基础面试... 1 1. Java基础知识... 5 1.1. Java源程序的扩展名是...
    来着何人阅读 1,176评论 0 1
  • 第二课程 java 的基础语法的基础 1.关键字都是小写,会变为蓝色 2.标志符: 标志符就是给类,接口,方法,变...
    浓茶馆阅读 752评论 0 0