1,常量,变量的理解

常量,程序运行过程中,不能改变的,叫常量。

变量,程序运行过程中,改变的,叫变量。

2,变量的理解

变量,用来存储数据的,数据类型,存放哪种数据的种类。

变量的概念:程序运行期间,可以在一定范围内发送改变的。

变量的本质,其实就是一个小内存的空间。

用来存储数据,内容可以发送改变,一次只能存放一个数据,可以通过变量的名称使用其中的数据。

且里面的数据必须符合数据整型的要求。

3,如何使用变量

创建一个变量,放入数据,这是第一种方案

创建一个变量同时放入数据,这是第二个方案

方案一:1,数据类型   变量名称   -------创建变量

2,变量名称=数据值  ----放入数值

等号是赋值的意思。

方案二:

数据类型  变量名称=数据值  -------创建的同事进行赋值

4,标识符

作用:给类,变量,包,方法等起名字组织的规则。硬性规则。

1,只能是由字符,下划线,美元符号组成。这里的字符可以是小写,大写,数字等,符号只能是下划线和美元符号。

2,不能以数字开头

3,软性建议

1,基本要求,见名知意

2,建议只使用英文字母和数字

3,常见的命名规则。

类:每个单词字母大写。  Student ,HelloWorld

变量:第一个单词完全小写,后续更多单词首字母要大写,eag,eagOfMyFriend

方法:与变量命名规则一样

包,就是文件夹,用于对类进行管理

cn.itcase   cn\itcase

com.ithema   com\ithema

5,数据类型

1,基本类型   2引用类型

基本类型    byte   short int long

浮点类型  float double

字符类型 char

布尔类型 boolean

注意事项:整数类型有4种,默认为int类型

浮点数有2种,默认是double

定义一个long类型,在数值后面加L,大小写均可

定义一个float类型,在数值后面要引用F作为。

字符char类型,是可以包含中文的

byte num;  创建变量

num = 100   给变量赋值

byte num2 =90;  定义变量并赋值

6,运算符:

运算符是一种特殊的符号,用以表示数据的运算,赋值,比较等,java中有以下类型运算符

1.算数运算符

java支持所有的基本算术运算符,这里介绍7种基本算术运算符

+:加法运算符,字符串的连接符

-:减法运算符,求负运算符

*:乘法运算符

/:除法运算符

%:求余运算符

++:自加运算符

--: 自减运算符

自加和自减:

1)自加和自减都是弹幕运算符,只能操作一个操作数,只能操作单个数值型的变量,不能操作常量或表达式

2)运算符可以出现在操作数左边或右边,如果运算符出现在左边,则先把操作数自增或自减再放入表达式中运算

如果运算符出现在操作数右边,则先进行表达式运算再自增自减

注意点:

1)除法运算的两个特殊性。a.如果两个操作数都是整数类型,则计算结果也是整数,就是将自然除法的结果截断取  整,

例如15/4的结果是3,不是4。两个操作数都是整数类型,则除数不能为0,否则引发算数异常。

b.如果两个操作数有一个或两个是浮点数,结果为自然除法的浮点数。而且此时允许除数可以为0或0.0,结果为正无穷大或负无穷大

2)求余的运算结果不一定是整数,它的计算结果是整除结果剩下的值。因为求余运算也经过除法运算,遵循除法运算的第一个特殊性。

但是如果两个操作数有一个以上是浮点数,第二个数值为0或0.0时,求余的结果是非数NaN。0或0.0对非0的任何数求余将得到0或0.0;

public static void main(String[] args) {

double a = 5.2;

double b = 3.1;

System.out.println(a%b);

System.out.println("5对0.0的求余结果是:"+5%0.0);

System.out.println("0对5的求余结果是:"+0%5);

System.out.println("0对5的求余结果是:"+0%5);

System.out.println("0对0.0的求余结果是:"+0%0.0);

//下面语句抛出异常

// System.out.println("5对0的求余结果是:"+5%0);

int c = 5;

int f = 5;

int d = c+++3;

int e = ++f+3;

System.out.println(c);

System.out.println(f);

System.out.println(d);

System.out.println(e);

c = -c;

System.out.println(c);

}

输出:

2.1

5对0.0的求余结果是:NaN

0对5的求余结果是:0

0对5的求余结果是:0

0对0.0的求余结果是:NaN

6

6

8

9

-6

2.赋值运算符

java中支持"="号作为运算符,其格式为: 装入的变量=直接量或变量,java支持连续赋值,但可读性低不推荐

3.比较运算符

比较运算符通常用于比较两个变量或常量的大小,返回的结果为布尔值true或false

>:大于号。比较运算符左右两边数值类型的变量或常量是否左边大于右边

>:小于号。比较运算符左右两边数值类型的变量或常量是否左边小于右边

>=:大于等于号。比较运算符左右两边数值类型的变量或常量是否左边大于或等于右边

<=:大于等于号。比较运算符左右两边数值类型的变量或常量是否左边小 于或等于右边

==:等于号。 可以比较数值类型,boolean类型和引用类型。只有两个引用类型具有父子关系时

才可以比较,且指向同一个对象时才返回true。比较数值类型时,只要数值相等就返回true,

例如‘a'==97返回true

4.逻辑运算符

逻辑运算符操作两个布尔型的变量或常量

&&:与。前后两个操作数返回true才返回true

&:不短路与。

||:或。前后两个操作数返回false才返回false

|:不短路或。

!:非。只有一个操作数。true的非操作为false,false的非操作为true

^:异或。操作数不同时返回true,相同时返回false

注意:对于&和&&的区别,都进行两个操作数的逻辑运算,当第一个操作数为false时,&&不会进行右边操作数的运算,

第二操作数被短路,但使用&仍然会执行第二个操作数的运算,第二个操作数不会被短路,但是最总返回的结果跟&&    一样。

|和||的区别解释同理

public static void main(String[] args) {

System.out.println("!false的结果是"+!false);

System.out.println(4>=5||'c'>'a');

System.out.println(4>=5^'c'>'a');

int a = 97;

int b = 36;

if(a>54 || ++a>97){

System.out.println(a);//a得不到自加运算

if(b>24 | ++b>36){

System.out.println(b);//b得到自加运算

}

}

}

输出:

!false的结果是true

true

true

97

37

5.位运算符

java支持7个位运算符:&,|,~,^,<>,>>>。一般来说,位运算符只能操作整数类型的变量或值

位运算符,都是计算机底层补码操作

&:按位与,当两位同时为1时才返回1

|:只要有一位为1时就返回1

~:单目运算符,将操作数在计算机底层的二进制码的每个位全部取反

^:按位异或,当两位相同时时返回0,不同时返回1

<

>>:右移运算符,移位后以原符号位补充,也就是负数以1补充,正数以0补充

>>>:无符号右移运算符,移位后总是以0补充

进行移位运算遵循的规则

1)对于低于int类型(byte,char,short)的操作数,总是自动类型转换为int类型后在移位

2)对于int类型的整数移位a>>b,当b>32时,系统先将b对32求余(int类型数值32位),

得到的结果才是移动的位数,例如a>>33与a>1结果完全一致

3)对于long类型的整数移位a>>b,当b>>64时,也是移(b%64)位

4)对于<>移位,把操作数左移n位,其结果等于操作数乘以2的n次方,

右移n位的结果等于操作数除以2的n次方,移位不会改变操作数本身

public static void main(String[] args) {

System.out.println("5&9="+(5&9));

System.out.println("5|9="+(5|9));

System.out.println("~-5="+(~-5));

System.out.println("5^9="+(5^9));

System.out.println(5<<2);

System.out.println(-5<<2);

System.out.println(-5>>2);

System.out.println(-5>>>3);

int a=6;

int b=a>>3;

System.out.println(a+"右移3位后是"+b+",原操作数是"+a+",其本身并没有变");

}

输出:

5&9=1

5|9=13

~-5=4

5^9=12

20

-20

-2

536870911

6右移3位后是0,原操作数是6,其本身并没有变

6.三目运算符

三目运算符只有一个?:,语法格式如下:(expression)?if-true stament : if-false stament

int c=11;

int d=12;

System.out.println(c>d?"c大于d":(c == d?"c等于d":"c小于d"));

输出:c小于d

7.扩展后的赋值运算符

赋值运算符可以跟算数运算符,移位运算符结合,扩展成为更强大的运算符。只要能使用这些扩展后的运算符,通常都推荐使用它们,不仅有更好的性能,而且程序更加健壮

+=:对于x+=y,相当于x=x+y;

-=:对于x-=y,相当于x=x-y;

*=:对于x*=y,相当于x=x*y;

/=:对于x/=y,相当于x=x/y;

%=:对于x%=y,相当于x=x%y;

&=:对于x&=y,相当于x=x&y;

|=:对于x|=y,相当于x=x|y;

^=:对于x^=y,相当于x=x^y;

<<=:对于x<<=y,相当于x=x<

>>=:对于x>>=y,相当于x=x>>y;

^=:对于x^=y,相当于x=x^y;

>>>=:对于x>>>=y,相当于x=x>>>y;

8.运算符优先级

9,

杭州博圣生物java开发_十天入门java教程 Day02相关推荐

  1. 高级java开发_我最喜欢的Java高级开发人员书籍

    高级java开发 我上一篇博客文章 (我对高级Java开发人员的十个最喜欢的在线资源)的想法,是由Xiaoran Wang发表的"面向高级Java开发人员的十大网站"的启发. Wa ...

  2. 高级java开发_我最喜欢的Java高级开发人员在线资源

    高级java开发 ProgramCreek.com博客最近发布了两个针对"高级" Java开发人员的有趣帖子:高级Java开发人员的十大书籍和高级Java开发人员的 十大网站 . ...

  3. Java 开发提升十倍生产力:idea 远程一键部署 springboot 到 Docker

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:牛人 20000 字的 Spring Cloud 总结,太硬核了~ 作者:陶章好 链接:https://juej ...

  4. java项目_好程序员Java分享从入门到服务端项目开发的过程

    好程序员Java分享从入门到服务端项目开发的过程,对于打算入门或者刚刚入门学习Java的人来说,刚开始接触这门学科,往往会觉得不知所措,也会觉得很迷茫.结合前人经验,就从入门到进阶对于Java的学习而 ...

  5. 网易 java工程师_网易微专业Java开发工程师

    Java 基础 1. JDK 和 JRE 有什么区别?JDK:Java Development Kit 的简称,Java 开发工具包,提供了 Java 的开发环境和运行环境. JRE:Java Run ...

  6. java 操作vss,java开发常用工具总结,java开发常用工具

    java开发常用工具总结,java开发常用工具 1.editplus editplus 是我使用最频繁的工具,不管是java程序还是其他的语言的程序,本人都使用它,方便好用,速度快.如果配置好的话,可 ...

  7. 零点起飞学java视频_零点起飞学java (刘升华) 高清PDF_IT教程网

    资源名称:零点起飞学java (刘升华) 高清PDF 第1篇 java开发基础 第1章 java概述( 教学视频:37分钟)        2 第2章 基本数据类型及运算( 教学视频:52分钟)    ...

  8. 陈力:传智播客古代 珍宝币 泡泡龙游戏开发第十五讲:HTML教程笔记

    陈力:传智播客古代 珍宝币 泡泡龙游戏开发第十五讲:HTML教程笔记 摘要:通过前节<第十三讲:盒子的定位实例>学习了网站建设中的DIV+CSS中实例综合应用介绍.本节对HTML试题笔记进 ...

  9. 初学Java--JDK(java development kit java 开发工具包)的下载与安装教程

    初学Java–JDK(java development kit java 开发工具包)的下载与安装教程 1. 下载安装包 点开链接可以找到JDK的版本安装界面 可以看到如下图所示的界面: 下面是我选择 ...

最新文章

  1. Complexer-YOLO:基于语义点云的实时三维目标检测与跟踪
  2. css设置元素继承父元素宽度_前端新手必知-5种新型的CSS长度单位
  3. rabbitMQ教程 一篇文章看懂rabbitMQ
  4. 035——VUE中表单控件处理之使用vue控制select操作文字栏目列表
  5. libiconv交叉移植
  6. Program Library HOWTO(2)
  7. 13. Django基础:admin后台管理
  8. 导出jar包和api文档
  9. python3ide使用方法_Python IDE
  10. 决策树ID3、C4.5和CART算法总结,及案例计算
  11. android耗电怎么解决方法,Android手机媒体进程耗电严重怎么办
  12. 两个子组件之间的传值
  13. 备战三个月,2021年阿里+腾讯+快手offer都已拿到!详解系列文章
  14. 矢志不渝为安全—清华同方举安全大旗正式杀入云计算市场
  15. 厉害了,大学生制作的学校三维实景模型
  16. 人人可以是好厨子:72招做饭技巧帮你变大厨
  17. android 百度地图 自定义地图标注,百度地图自定义标注
  18. Layui-颜色选择器
  19. 代码简单生成uml图的小工具 Lumpy
  20. 交叉工具编译ARM平台Opus音频库

热门文章

  1. 升级 Oracle Linux 6 到 7
  2. 惜败虾皮、快手、拼多多,终拿字节 offer
  3. 转转前端周刊第五十二期
  4. 用python做红绿灯_Python利用Event类模拟红绿灯
  5. Android实现红绿灯检测(含Android源码 可实时运行)
  6. 走近人工智能|NLP的语言革命
  7. 【报告分享】懂车帝2021年平台营销通案-懂车帝(附下载)
  8. F i r s t T h r e a d可以在S e c o n d T h r e a d将5分配给F i r s t T h r e a d的x之前结束它的 操作
  9. mysql中using index、using where、using index condition的区别
  10. Golang编程百例-Golang输出特殊图案