思维导图看不清楚时:

1)可以将图片另存为图片,保存在本地来查看

2)右击在新标签中打开放大查看

1.注释

定义:用于解释说明程序作用的文字

注释类别

单行注释

格式: //注释文字

多行注释

格式: /* 注释文字 */

文档注释

格式:/* 注释文字 /

区别于多行注释:多一个*

2.关键字

定义:被Java语言赋予特定含义的单词,又称保留字

goto和const作为保留字存在,目前并不使用

关键字有哪些



3.标识符

定义:程序中需要我们自己来命名的,比如类名,方法名,变量名

标识符命名规则

  • 由字母、数字、下划线、$组成,但不能以数字开头

    大小写敏感

    不得使用java中的关键字和保留字

    建议采用驼峰式写法,比如定义一个系统用户类 SystemUser

4.常量与变量

##常量

程序中,固定不变的值

变量

变量用来存储程序执行中用到的数据

变量存储的数据是可以改变的

变量定义格式

数据类型 变量名 = 初始化值;

5.数据类型

Java语言是强类型语言,对于每一种数据都定义了明确的数据类型,在内存中为每种数据类型分配了不同的内存空间

数据类型

各种类型数据占用空间与范围



注意:char是占2个字节

其他

  • 1字节 = 8位,即2^8
  • 数据分类的目的:合理利用内存
  • 开发中:整数一般采用int和 long, 小数:double

规则

  1. 变量必须先声明,并且初始化后才能使用;
  2. 声明变量必须有数据类型
  3. 同一作用域内变量不能重复定义
  4. 变量名小写开头
  5. 变量的赋值不能越界

6,数据类型的转换问题

赋值时的转换

默认转换(把小的赋值给大的)

byte-short-int-long-float-double

强制转换(把大的赋值给小的)

目标类型 变量名=(目标类型)变量值;

运算时的转换,掌握+号运算符(默认转换)

**注意:**float类型数据赋值时,必须进行数据转换,因为小数默认为double类型

转换方式:

1.float a=(float)1.01; 在数值前加(float)

2.float a=1.01f; 在数值后面加f

所有的小数均默认是double类型,要用float类型时必须进行类型转换

在运算中直接使用的整数均为int类型,所以int类型一下的类型与其运算时都会变为int类型,若赋值给int一下的类型,则会损失精度。

如short a=2 ; a=a+2;输出a是会损失精度,因为a+2的结果为int类型,会溢出。

但“+=”会自动做类型转换,a+=2时,此时不会损失精度

6.表达式的概念

表达式的概念:操作数+运算符+操作数,就组成一个表达式

7.运算符

算术运算符

算术运算符(+、-、*、/、%、++、–、注意区分前置和后置的区别)

/和%区别:前者为除号,后者为取模

%(取模)的正负号由被除数(分子)决定,如3%2,-3%2结果分别为1和-1

+加法运算:运算中从前往后执行,+(加号)前后数据一个为字符时,则都会转换为字符后运算

System.out.println(1+1+“1”);//21

System.out.println(“1”+1+1);//111

+(加号):在左右操作数均为数值时,+为加号;若有一个是字符,+为连接符。

字符串和任意类型的数据相加,结果均为字符串

/除法结果数据类型

分子和分母同类型时,结果类型还是该类型,如10/3 结果为3.

10.0/3.0 结果为3.33335

若均为整数时,结果不会四舍五入,不会3.9取为4,结果是取去除余数得到的整数

分子和分母类型不同时,取范围大的数据类型,如10/3.0 结果为3.3335

n++:会先把原先的结果输出,再加1

++n:会先加1后,在输出

int a = 8;

int b = (a++)+(++a)+(a*10);//118

分析:a++先输出8,在加1使a变为9;++a先加1再输出,a变为10;最后加100,得到118

注意:

a.运算中对变量进行操作,会改变变量

b.println中对变量进行操作,也会改变变量

赋值运算符

赋值运算符(= , +=, -=, *=, /=, %=)

short s=1; s = s+1; //丢失精确度 运算时,ss + 1会转换为int类型

short s=1; s+=1;//s 2 运算时, += 会自动做类型转换的处理

关系(比较)运算符

==:相等

!=:不相等

:大于

<:小于

=:大于等于

<=:小于等于

关系运算符的结果都是boolean类型,true 或者 false

注意:=和==区别

int x = 10;

int y = 10;

boolean flag = (x == y);

//boolean flag = (x = y);//error

分析:先给x赋值为y,再给flag赋值,x为数值,flag为布尔值,会报错。将flag类型改为int就不会报错了

System.out.println(flag);//true

boolean b1 = true;

boolean b2 = false;

boolean b3 = (b1 == b2);

System.out.println(b3);//false

boolean b4 = (b1 = b2);//flase 此时不存在上题的类型冲突,不会报错

逻辑运算符

&(与) 、|(或) 、!(非)&&(短路与)、||(短路或)、^(异或)

语法规则

& 一个为假,则为假 逻辑与

| 一个为真,则为真 逻辑或

!非false则true,非true则false

&& 一个为假,则为假 短路与

|| 一个为真,则为真 短路或

^ 两个不同,则为true,相同则为false

短路与和逻辑与的区别(&& vs & || vs |)

短路与,只要前面可以确定结果是false,那么后面就不管了

逻辑与,就算前面可以确定结果是false,它也要去计算后面的值

短路或,只要前面可以确定结果是true,那么后面就不管了

逻辑或,就算前面可以确定结果是true,它也要去计算后面的值

证明逻辑与或和短路与非的区别

方法一

public class Zy07{
public static void main(String[] args){
//设计一个实验证明&和&&的区别
/*
结论:
短路与&&,只要前面可以确定结果是false,那么后面就不管了
逻辑与&,就算前面可以确定结果是false,它也要去计算后面的值 短路或||,只要前面可以确定结果是true,那么后面就不管了
逻辑或|,就算前面可以确定结果是true,它也要去计算后面的值 设计个实验证明这个结论
*/ boolean c1 = 1>2&&2>(3/0);
//boolean c1 = 1>2&2>(3/0);
/*使用&时会报错,说3的除数不能为0,说明运算了后面的部分
而使用&&时不会报错
*/
System.out.println(c1);//false }
}

该法利用分母不能取零来判断

方法二

public class Test2{
public static void main(String[] args){
int a=1;
int b=1;
System.out.println(a<0&b++>0);//false
System.out.println(b);//2 System.out.println(a<0&&b++>0);
System.out.println(b);//2 }
}

该法利用a和b是否发生变化来判断

三目运算符

格式:

(关系表达式)?表达式1:表达式2;

如果关系表达式结果为true,运算后的结果是表达式1;

如果关系表达式结果为false,运算后的结果是表达式2;

练习:取两个数中的最大值

8.转义字符

定义:通过“\”来改变后面所跟字符的含义

JavaSE教程-02Java基本语法-思维导图的更多相关文章

  1. 学习Python最好的方法就是实践和教程并行,以下有一些资源和教程,还有一些学习思维导图:

    1.Python 的 14 张思维导图下载地址: https://woaielf.github.io/2017/06/13/python3-all/ 2.Python基础教程|菜鸟教程: http:/ ...

  2. SpringBoot图文教程「概念+案例 思维导图」「基础篇上」

    有天上飞的概念,就要有落地的实现 概念+代码实现是本文的特点,教程将涵盖完整的图文教程,代码案例 每个知识点配套自测面试题,学完技术自我测试 本文初学向,所以希望文中所有的代码案例都能敲一遍 大哥大姐 ...

  3. 【MSSQL教程】#001 整体思维导图

    整个MSSQL体系的一个思维导图,方便理解整个MSSQL需要学习那些方面的知识.

  4. JavaSE教程-01初识Java-思维导图

    图片看不清楚时: 1)可以将图片另存为图片,保存在本地来查看 2)右击在新标签中打开放大查看. 分解: 1.计算机基本概念的普及 硬件 cpu.内存.硬盘等 软件 系统级软件 Windows.Linu ...

  5. 孔浩老师的 Struts2 教程听课笔记(思维导图)

    最近有空重头学习了一遍孔浩老师的 Struts2 教程,重新写了一份听课笔记.后面常用 form 标签.服务器端验证.异常处理因为时间问题,没有来得及整理.后续我会抽空补上.最近忙着准备笔试.面试. ...

  6. 数据库MySQL基本语法思维导图

  7. PHP基础语法思维导图

  8. JavaSE教程-02Java基本语法-BUG:易错点

    1.区别文档注释和多行注释 多行注释:多一个* 多行注释 格式: /* 注释文字 */ 文档注释 格式:/** 注释文字 */ 2.有关变量名.类名.方法名等注意点 由字母.数字.下划线.$组成,但不 ...

  9. JavaSE教程-02Java基本语法-练习

    请说出下面的运算结果及解释为什么 System.out.println(1+1+"1");//? System.out.println("1"+1+1);//? ...

随机推荐

  1. Java集合的区别和选择

              Collection |--List       有序,可重复 |--ArrayList 底层数据结构是数组,查询快,增删慢. 线程不安全,效率高 |--Vector 底层数据结构 ...

  2. 1.6 在WHERE子句中引用取别名的列

    如下查询,会抛出错误:mysql> select sal as salary, comm as commission from emp where salary < 5000;ERROR ...

  3. 跟着刚哥梳理java知识点——反射和代理(十七)

    反射机制是什么?反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有的属性和方法:对于任意一个对象,都能够调用他的一个方法和属性,这种动态获取的信息以及动态调用对象的方法的功能称为java语 ...

  4. 点击按钮,缩放图片(img.width、img.style.width、img.offsetWidth)

    前几天在慕课网上看到一个关于图片缩放的教学视频,因为当时对老师使用img.width,而不是使用img.style.width而感到奇怪,所以周末得空了,想来自己试着写出来,相关视频网址如下:http ...

  5. java类集框架(ArrayList,LinkedList,Vector区别)

    主要分两个接口:collection和Map 主要分三类:集合(set).列表(List).映射(Map)1.集合:没有重复对象,没有特定排序方式2.列表:对象按索引位置排序,可以有重复对象3.映射: ...

  6. JAVA虚拟机环境变量设置

    转自: 网络    下载java环境变量设置所需的jdk并安装,下载地址:http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk7 ...

  7. C#控制台程序使用Log4net日志组件

    1.Log4net一般都不陌生,但是在配置上不同类型的项目又不相同的地方比如C#控制台程序和C# MVCWeb项目,拿控制台项目为例   项目源码在文章底部 2.首先创建一个控制台程序,引入Log4n ...

  8. C#基础知识-编写第一个程序(二)

    通过上一篇数据类型已经介绍了C#中最基本的15种预定义数据类型,了解每一种类型代表的数据以及每种类型的取值范围,这是很重要也是最基本.下面我们通过实例来了解每个类型如何去使用.编写C#程序时我们需要用 ...

  9. RNN的介绍

    一.状态和模型 在CNN网络中的训练样本的数据为IID数据(独立同分布数据),所解决的问题也是分类问题或者回归问题或者是特征表达问题.但更多的数据是不满足IID的,如语言翻译,自动文本生成.它们是一个 ...

  10. jquery之属性操作

    jQuery之属性操作 相信属性这个词对大家都不陌生.今天我就给大家简单地介绍一下JQuery一些属性的操作 属性一共分三大类 一.基本属性 1.attr 2.removeAttr 3.prop 4. ...