一、数据类型

1.基本数据类型

Ps:有效标识符:_、字母、$开头  之后可有数字

整型:byte 1 short 2 int 4 long 8  (字节)

取值范围:其范围是从负2 的该数据类型位数减1次幂到2 的该数据类型位数减1 次幂– 1。

2.浮点型

float 4            double 8   (字节)

取值范围:6~7 位有效数字             15 位有效数字

注意:float 类型的数值必须加一个后缀F

例:如果不加后缀F,这个数据就会被Java 理解成

double 类型。也可以在double 类型的数值后加上D,例如3.14D。

各类型的默认值:byte、int、short 的默认值是0,long 的默认值是0L,float 的默认值是0.0f,double

的默认值是0.0,char 的默认值是’\u0000’代表空格,boolean 的默认值是false。

3.char 类型

16 位无符号的Unicode 字符

注意: char 字符必须在英文状态下的单引号内(’’)。

一个char 类型的数据仅仅表示一个字符,如果需要表示多个字符(这称为字符串)需要使

用String 类来表示

注意:char类型的字符实际也可以当做数字加减!!

char i = 'A';

char j = 'a'+15;

int b = j - i;

例:

’a’ 小写字母a

’\t’ 制表符

’\u????’ 特定的Unicode 字符。

4.布尔型

true false   注意:不能相互转换!!

5.引用类型:

除了基本数据类型之外的都是引用类型

二、变量

概念:变量是一段有名字的连续存储空间。在源代码中通过定义变量来申请并命名这样的存储空间,并通过变量的名字来使用这段存储空间。

变量名的命名规则:

1、一般是一个有意义的英语单词或词组,以小写字母或者下划线“_”开头。

2、如果变量名由多个单词组成,除第一个单词外,后面每个单词的第一个字母都需要大写,类似于方法名,如isValid、currentJavaObject 等。

3、避免使用美元符号($),这个符号对内部类有特殊意义。

注意:声明一个变量后必须用赋值语句对变量进行显示初始化,如果使用未被初始化的变量可能会造成编译错误。

二、基本类型之间的转换的注意要点:

图中实线箭头表示精度不会有损失的转换,虚线箭头表示转换完成后可能有精度损失

类型转换:1.长度短的类型自动转为长度的类型

2.精度小的类型自动转为精度高的类型

3.当两个精度不一样的数相互计算时,其结果自动转为精度高的值。

4. 凡是长度小于int 的数据类型(即使参与计算的两个数都是short或者byte),其运算结果都会转变成int类型。

5.若要从高精度 |长度大的数据转换为低精度|长度小的数据,需要强制转换,(数据会损失精度)。

三、算数运算

注意:1.整数除以0,或抛出异常  java.lang.ArithmeticException: / by zero

2.浮点数除以0,会得到Infinity(无穷大)。(并不是异常)

3. %表示整数的求余运算

4. ++i。 “前缀”形式是先运算,再做其他操作;    i++。  “后缀”形式是先做其他操作,再运算

例子:int i = 10;

System.out.println(i++);//输出的是10  若是++i则输出11

5. 没有 ** 和 // 运算符,因为自乘1 和自除以1 数值结果不会改变。

6. ~非  :按位取反

&与:同1为1,其余为0

异或:两数不同时为1,其余为0

或:有1时为1,其余为0

7.右移运算符>>移位结果是:第一个操作数被2 除,

除的次数由第二个操作数决定。例如:

128>>1 返回 128/21 = 64

-256>>4 返回 -256/24 = -16

“<<”将二进制位进行左移操作。其操作结果是:第一个操作数被2 乘,乘的次数由第二个操作数决定。

例如:

128<<1 返回 128*21 = 256

注意: 有>>>(逻辑或无符号右移运算符)   但是没有<<<

四、关系运算符

注意:1. &和&&的区别是什么?

答:a.  和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true 时,整个运算结果才为true,否则,只要有一方为false,则结果为false。

b.  &&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式。

c.  &还可以用作位运算符,当&操作符两边的表达式不是boolean 类型时,&表示按位与操作。

2. ( = *= /= %= += -= <<= >>= >>>= &=  ^= |= )这些运算符优先级最低

3. &&比||优先级高

4.优先级:& > ^ > |

5. +=是右结合运算符

表达式

a+=b+=c

等价于

a+=(b+=c)

五、语句块

注意:1. 语句块确定了变量的作用域。(在一个语句块内定义的变量,不可以再语句块之外使用。)

2. 不允许在嵌套的两个块内声明同名的变量。

六、Switch分支

注意:1. switch 表达式中的类型有哪些?

答:switch 表达式的结果必须是 四种整型、枚举类型、String(JDK1.7以上版本,否则不能测试String 类型),case 后面一定是常量,并且不能重复。

七、while循环

注意:1. 当一次循环结束后会再次检查while 条件的返回值,如果为false 就退出循环,否则继续执行循环。

2.continue 和 break的区别:

答: 前者 只是终止当前的一次循环 ,还将继续后面的循环 ;后者被执行后,就终止循环。

JAVA_SE复习(basic)的更多相关文章

  1. 7.JAVA_SE复习(文件)

    文件和流 1.什么是节点流和处理流 InputStream & OutputStream Reader & Writer 乃节点流, 前面加File之类的名词 的节点流 其余加动词的均 ...

  2. 6.JAVA_SE复习(集合)

    集合 结构图: 总结: 1.集合中的元素都是对象(注意不是基本数据类型),基本数据类型要放入集合需要装箱. 2.set与list的主要区别在于set中不允许重复,而list(序列)中可以有重复对象. ...

  3. JAVA_SE复习(多线程)

    线程 1.两种创建线程的方式都有自身的优点.  实现 Runnable 接口的优点:  从面向对象的设计观点看,Thread 类严格来讲是一个虚拟CPU 的封装,因此只有要改变或扩展该CPU 模型 ...

  4. JAVA_SE复习(异常)

    异常.调试和断言 一. 异常的分类 1. 可查异常    例: 2. 不可查异常  例:Runtime Exception 3. 异常的分类结构: 1. 不执行finally 子句的唯一情况是虚拟机关 ...

  5. JAVA_SE复习(OOP2)

    面向对象编程(二) 一.static 关键字 静态属性 1.不能覆盖静态方法.要被覆盖的方法必须是非静态的.在继承链中具有相同方法名的两个静态方法是两个互相独立的类方法.调用子类的静态方法只是将父类的 ...

  6. JAVA_SE复习(Class)

    一.面向对象程序设计(OOP) 1.面向对象的程序设计是程序开发的一种方法.它将对象作为程序的基本单元,将程序和 数据封装其中,以提高软件的重用性.灵活性和扩展性 2.三个特征: 封装:隐藏信息 继承 ...

  7. JAVA_SE复习(OOP1)

    面向对象编程(一) 一.继承 1. 在类图表示中,使用一个分为三块的矩形表示一个类.矩形的第一块表示类名,第二块描述这个类的属性及属性的数据类型,第三块描述这个类的操作,也就是方法以及返回类型.    ...

  8. [Java复习] Java基础 Basic

    Q1面向对象 类.对象特征? 类:对事物逻辑算法或概念的抽象,描述一类对象的行为和状态. OOP三大特征,封装,继承,多态 封装:隐藏属性实现细节,只公开接口.将抽象的数据和行为结合,形成类.目的是简 ...

  9. C#复习①

    C#复习① 2016年6月15日 08:19 Main Introduction of C# 简单介绍C# 1. C# is very similar to Java (70% Java, 10% C ...

随机推荐

  1. 【zabbix系列】报警系统的设置和排除

    关于邮件报警,有非常多方案,这里选择的是稳定性较好.使用较多的msmtp+mutt方案. 该方案有一个非常好的地方在于不用自己来搭建独立的mailserver,能够使用第三方mail.这样的方法不仅能 ...

  2. ios开发——面试篇C语言精华

    面试篇C语言精华    1.面向过程:分析解决问题所需要的步骤,然后用函数把这些步骤一步一步实 现. 面向对象:直接描述客观世界的对象及其相互关系.现实世界中任何实体都 可以看作是对象,对象之间通过消 ...

  3. MySQL · 特性分析 · MDL 实现分析

    http://mysql.taobao.org/monthly/2015/11/04/ 前言 在MySQL中,DDL是不属于事务范畴的,如果事务和DDL并行执行,操作相关联的表的话,会出现各种意想不到 ...

  4. 高级I/O之异步I/O

    A synchronous I/O operation causes the requesting process to be blocked until that I/O operation com ...

  5. Computer Science Theory for the Information Age-3: 高维空间中的高斯分布和随机投影

    高维空间中的高斯分布和随机投影 (一)在高维球体表面产生均匀分布点的方法 我们来考虑一个采样问题,就是怎样在高维单位球体的表面上均匀的采样.首先,考虑二维的情况,就是在球形的周长上采样.我们考虑如下方 ...

  6. C语言预处理操作符

    在看<深入剖析Nginx>时看见一个非常少见的C语言知识点:预处理操作符. #define conn(x,y) x##y //将子串x和y连接形成新的串 #define tochar(x) ...

  7. CF Watto and Mechanism (字典树+深搜)

    Watto and Mechanism time limit per test 3 seconds memory limit per test 256 megabytes input standard ...

  8. hdu 4606 简单计算几何+floyd+最小路径覆盖

    思路:将所有的直线的两个端点和城市混在一起,将能直接到达的两个点连线,求一次floyd最短路径.二分枚举bag容量,然后按给的要先后占领的城市由前向后,把能到一步到达的建一条边.然后求一次最小路径覆盖 ...

  9. HTTP状态码解读

    1xx:信息 消息 描述 100 Continue 服务器仅接收到部分请求,但是一旦服务器并没有拒绝该请求,客户端应该继续发送其余的请求. 101 Switching Protocols 服务器转换协 ...

  10. Git CMD - status: Show the working tree status

    命令参数 git status [<options>…​] [--] [<pathspec>…​] 命令格式 --short, -s 短格式输出. -- long 长格式输出, ...