一、标识符和关键字
 
关键字:
就是被java语言赋予了特殊含义的单词。
特点就是所有的关键字都是小写。
 
标识符:
就是给包、类、接口、方法、变量名起的名字。
规则:1.以数字、字母、_以及$符号组成。
          2,不能以数字开头,不能以空格分开,不能是JAVA中的关键字,区别大小写如Test 和test是2个不同的标识符
 3 .起名字一定要见明知意例如:yourName,见名知义,不要用a,b,c之类的
 4.不合法的标识符 12,your name ,class,
         5.12以数字开头,your name中间有空格 class中java中的关键字
二、变量和常量
常量:是一个固定的数值,不可改变的如1,2都是整形常量
    1. 整数常量:所有整数。
    2. 小数常量:所有小数。
    3. 布尔(boolean)型常量:只有两个数值,true、false。
    4. 字符常量:将一个数字字母或者符号用单引号( ' ' )标识,如:'a'。
    5. 字符串常量:将一个或者多个字符用双引号("")标识,如:"hello world"、"a"、""(空字符串)。
    6. null常量:只有一个数值就是:null。
进制的由来
    对于整数,有四种表现形式:
    二进制:0-1,满2进1。
    八进制:0-7,满8进1,用0开头表示,如:012。
    十进制:0-9,满10进1。
    十六进制:0-9,A-F,满16进1,用0x开头表示。如:0x4A2C。
变量:

就将不确定的数据进行存储

也就是在内丰中开辟一个空间用来存放变量的。

利用声明的方式将内在中的某个内在空间保留下来以代程序使用

声明数据类型:变量名=变量值

三、数据类型


Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间:
        byte     1个字节
        short    2个字节
        int        4个字节
        long     8个字节
        float     4个字节
        double 8个字节
        char     2个字节

1、整数默认类型:int类型,小数默认类型:double类型。
2、double类型的小数精度比float类型的小数更高。

范围

No.
数据类型
大小/位
可表示的数据范围
1
long(长整数)
64
-9223372036854775808 ~ 9223372036854775807
2
int(整数)
32
-2147483648 ~ 2147483647
3
short(短整数)
16
-32768~32767
4
byte(位)
8
-128 ~ 127
5
char(字符)
2
0 ~ 255
6
float(单精度)
32
-3.4E38(-3.4´1038) ~ 3.4E38(3.4´1038)
7
double(双精度)
64
-1.7E308(-1.7´10308)~ 1.7E308(1.7´10308)

默认值

No.
数据类型
默认值
1
byte
(byte)0
2
short
(short)0
3
int
0
4
long
0L
5
float
0.0f
6
double
0.0d
7
char
\u0000(空,'')
8
boolean
false
 
 
四、类型转换
类型转换分为2种:
  自动类型转换
  强制类型转换
4.1、自动类型转换
 
自动类型转换由低类型向高类型自动转换
1.转换前的数据类型和转换后的数据类型兼容
2.转换后的数据类型的表示范围比转换前的范围在
3.低类型和高类型同时运算时自动转化为高类型运算
 
java 中byte char short int 运算时自动转换为int类型运算
byte a=1;   //声明byte 类型变量a=1
int b=a+1; //声明int 变量b 同时赋值a+1,1是整型a向整型转化为整型运算,自动转化
System.out.println(b); short s1=1; //声明short类型变量s1同是赋值1
short s2=s1++; //声明short 类型变量s2同时赋值s1++,自增运算,内隐藏了自动类型转化
s2+=1; //s2+=1;自动类型转换

任何类型和字符相连都向字符串转换

int a=5,b=5;
System.out.println("a+b="+a+b); //a+b=是字符串+5变为 a+b=5,再+连接5,结果变为a+b=55
System.out.println("a+b="+(a+b)); //使用括号提高优先级
字符类型在内存中占有2个字节,可以用来保存英文字母等字符,字符要用一对单引号('')括起
         char ch1='a';
char ch2=97;
System.out.println("ch1= "+ch1);
System.out.println("ch2= "+ch2);
结果:ch1=a,ch2=a
字符类型也算是整数类型的一种
常用的转义字符:
No.
转义字符
描述
No.
转义字符
描述
1
\f
换页
2
\\
反斜线
3
\b
倒退一格
4
\'
单引号
5
\r
归位
6
\"
双引号
7
\t
制表符Tab
8
\n
换行
        char ch1='\"';
char ch2='\\';
System.out.println("ch1= "+ch1);
System.out.println("ch2= "+ch2);
System.out.println("\"Hello World\"");

结果:

ch1= "
ch2= \
"Hello World"

4.2、强制类型转换

定义:强制类型转换需要把类型进行手动转换,否则无法正常使用
在变量前面加上(要转换的类型) 变量
五、运算符

5.1、赋值运算符

=:一个等号就是赋值运算符

5.2、一元运算符

No.
一元运算符
描述
1
+
正号
2
负号
3
!
NOT,否
 

结果:

x= 10
y= -30
flag= false  !b= true

5.3、算术运算符

算术运行符和数学中的用法一样

No.
算术运算符
描述
1
+
加法
2
减法
3
*
乘法
4
/
除法
5
%
取模(取余数)
        int i = 10;
int j = 3;
System.out.println(i+"+"+j +"="+(i+j)); //加法
System.out.println(i+"-"+j +"="+(i-j)); //减法
System.out.println(i+"*"+j +"="+(i*j)); //乘法
System.out.println(i+"/"+j +"="+(i/j)); //除法
System.out.println(i+"%"+j +"="+(i%j)); //取模求余数

结果:

10+3=13
10-3=7
10*3=30
10/3=3
10%3=1


5.4、关系运算符

No.
关系运算符
描述
1
>
大于
2
<
小于
3
>=
大于等于
4
<=
小于等于
5
==
等于
6
!=
不等于
 

5.5、自增加与自减运算符
自增与自减运算符

No.
自增与自减运算符
描述
1
++
自增,变量值加1
2
--
自减,变量值减1
        int a=3,b=3;             //定义整型变量a,b
int x=6,y=6; //定义整型变量x,y
System.out.println("a= "+a); //输出变量a的值
System.out.println("a++="+(a++)+" a= "+a); //输入a++和a++之后a的值3,4
System.out.println("b= "+b);
System.out.println("++b="+(++b)+" b="+b); //值出++b,和++b之后b的值4,4
System.out.println("x= "+x);
System.out.println("x--="+(x--)+" x= "+x); //输出x--和x--之后x的值6,5
System.out.println("y= "+y);
System.out.println("--y="+(--y)+" y="+y); //输出--y和--y之后的值5,5

5.6、逻辑运算符

No.
逻辑运算符
描述
1
&
AND,与
2
&&
短路与
3
|
OR,或
4
||
短路或
 
AND及 OR结果表
No.
条件1
条件2
结果
&&(与)
||(或)
1
true
true
true
true
2
true
false
false
true
3
false
true
false
true
4
false
false
false
false
  • &&”与“&”
  • &&表示短路与
  • 对于“与”来说,要求所有的条件都判断,而如果使用“短路与”如果第一个条件为false,则后面的条件将不再判断。
  • “||”与“|”
  • ||表示短路或
  • 对于“或”来说,要求所有的条件都判断,而如果使用“短路或”如果第一个条件为true,则后面的条件将不再判断。

5.7、位运算符

No.
位运算符
描述
1
&
按位与
2
|
按位或
3
^
异或(相同为0,不同为1)
4
~
取反
5
<<
左移位
6
>>
右移位
7
>>>
无符号右移位

位运算的结果表

No.
二进制数1
二进制数1
与操作(&)
或操作(|)
异或操作(^)
1
0
0
0
0
0
2
0
1
0
1
1
3
1
0
0
1
1
4
1
1
1
1
0
 

5.8运算符优先级

 
优先级
运算符
结合性
1
()
括号运算符
由左至右
1
[]
方括号运算符
由左至右
2
!、+(正号)、-(负号)
一元运算符
由右至左
2
~
位逻辑运算符
由右至左
2
++、--
递增与递减运算符
由右至左
3
*、/、%
算术运算符
由左至右
4
+、-
算术运算符
由左至右
5
<<、>>
位左移、右移运算符
由左至右
6
>、>=、<、<=
关系运算符
由左至右
7
==、!=
关系运算符
由左至右
8
&(位运算符AND)
位逻辑运算符
由左至右
9
^(位运算符号XOR)
位逻辑运算符
由左至右
10
|(位运算符号OR)
位逻辑运算符
由左至右
11
&&
逻辑运算符
由左至右
12
||
逻辑运算符
由左至右
13
?:
三目运算符
由右至左
14
=
赋值运算符
由右至左
 
5.9简洁表述式
 
No.
运算符
范例用法
说明
描述
1
+=
a += b
a + b的值存放到a中
a = a + b
2
-=
a -= b
a - b的值存放到a中
a = a - b
3
*=
a *= b
a * b的值存放到a中
a = a * b
4
/=
a /= b
a / b的值存放到a中
a = a / b
5
%=
a %= b
a % b的值存放到a中
a = a % b
简洁表达式的范例
No.
运算符
范例
执行前
说明
执行后
a
b
a
b
1
+=
a += b
12
3
a + b的值存放到a中(同a = a + b)
15
3
2
-=
a -= b
12
3
a - b的值存放到a中(同a = a – b)
9
3
3
*=
a *= b
12
3
a * b的值存放到a中(同a = a * b)
36
3
4
/=
a /= b
12
3
a / b的值存放到a中(同a = a / b)
4
3
5
%=
a %= b
12
3
 a % b 的值存放到a中(同a = a % b)
0
3
6
b++
a *= b++
12
3
a * b的值存放到a后,b加1(同a = a * b;b++)
36
4
7
++b
a *= ++b
12
3
  b加1后,再将a*b的值存放到a(同b++;a=a*b)
48
4
8
b--
a *= b--
12
3
a * b的值存放到a后,b减1(同a=a*b;b--)
36
2
9
--b
a *= --b
12
3
    b减1 后,再将a*b的值存放到a(同b--;a=a*b)
24
2
No.
数据类型
大小/位
可表示的数据范围
1
long(长整数)
64
-9223372036854775808 ~ 9223372036854775807
2
int(整数)
32
-2147483648 ~ 2147483647
3
short(短整数)
16
-32768~32767
4
byte(位)
8
-128 ~ 127
5
char(字符)
2
0 ~ 255
6
float(单精度)
32
-3.4E38(-3.4´1038) ~ 3.4E38(3.4´1038)
7
double(双精度)
64
-1.7E308(-1.7´10308)~ 1.7E308(1.7´10308)

默认值

No.
数据类型
默认值
1
byte
(byte)0
2
short
(short)0
3
int
0
4
long
0L
5
float
0.0f
6
double
0.0d
7
char
\u0000(空,'')
8
boolean
false
 

基础学习day02--标识符、关键字、数据类型与运算符的更多相关文章

  1. 前端学习笔记--js概述与基础语法、变量、数据类型、运算符与表达式

    本篇记录js的概述与基础语法.变量.数据类型.运算符与表达式 1.概述与基础语法 2.变量 举例: 3.数据类型 4.运算符与表达式

  2. core java 1~4(HelloWorld & 标识符|关键字|数据类型 & 表达式|流程控制 & 数组)

    MODULE 1 Java的编译和运行----------------------------编译:javac -d bin src\HelloWorld.java -d:指定编译后的class 文件 ...

  3. C++基础 学习笔记五:重载之运算符重载

    C++基础 学习笔记五:重载之运算符重载 什么是运算符重载 用同一个运算符完成不同的功能即同一个运算符可以有不同的功能的方法叫做运算符重载.运算符重载是静态多态性的体现. 运算符重载的规则 重载公式 ...

  4. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  5. 【重走Android之路】【Java面向对象基础(一)】数据类型与运算符

    [重走Android之路][基础篇(一)][Java面向对象基础]数据类型与运算符   1.数据类型介绍 在Java中,数据类型分为两种:基本数据类型和引用类型. 基本数据类型共8种,见下表: 基本数 ...

  6. [零基础学JAVA]Java SE基础部分-02.标识符、数据类型

    转自:http://redking.blog.51cto.com/27212/114976 1.课程名称:标识符.数据类型 本季介绍了Java中的标识符的命名规则,各种关键字及数据类型的划分,并对各种 ...

  7. [java学习笔记]java语言基础概述之标识符&关键字&注释&常量和变量

    一.标识符 在程序中自定义的一些名称 由26个英文字母的大小写,数字,_$组成 定义合法标识符的规则: 不能以数字开头 不能使用关键字 java严格区分大小写 注意:在起名字时,为了提高阅读性,必须得 ...

  8. 大数据学习--day02(标识符、变量、数据类型、类型转换、进制转换、原码反码补码)

    标识符.变量.数据类型.类型转换.进制转换.原码反码补码 标识符: java50个关键字不能做标识符,以数字开头不能做标识符(这个老是忘记写一个类名的时候) 变量: 变量分为成员变量和局部变量,注意作 ...

  9. Java 标识符、数据类型、运算符

    一.标识符 1.组成 首字母(字母,下划线,﹩)+其余部分(数字,字母,下划线,﹩) 2.命名规范 ①由大小写字母.下划线.数字.﹩ ②数字不能开头 ③标识符长度没有限制 ④标识符不能是关键字和保留字 ...

  10. c的详细学习(2)数据类型,运算符与表达式

        本节用来介绍c语言中的数据类型和运算符.     (1)c语言的基本符号:       任何一种基本语言都有自己的基本词汇表.c语言的基本词汇表有一下几部分: *数字10个: *英文字母:大小 ...

随机推荐

  1. SpringMVC学习系列-后记 结合SpringMVC和Hibernate-validator,根据后台验证规则自动生成前台的js验证代码

    在SpringMVC学习系列(6) 之 数据验证中我们已经学习了如何结合Hibernate-validator进行后台的数据合法性验证,但是通常来说后台验证只是第二道保险,为了更好的用户体验会现在前端 ...

  2. Table_EXISTS_ACTION=APPEND时导入数据时

    11g对数据泵新增了一些功能.这篇介绍新增的选项DATA_OPTIONS=SKIP_CONSTRAINT_ERRORS. Oracle11g的数据泵新增了一个DATA_OPTIONS选项,目前只有一个 ...

  3. 栈的图文解析 和 对应3种语言的实现(C/C++/Java)

    概要 本章会先对栈的原理进行介绍,然后分别通过C/C++/Java三种语言来演示栈的实现示例.注意:本文所说的栈是数据结构中的栈,而不是内存模型中栈.内容包括:1. 栈的介绍2. 栈的C实现3. 栈的 ...

  4. Erlang进程的Link机制

    这篇文章还不是最终版,有时间时,我会再来补充完善. 什么是link Erlang程序基于进程建模,进程之间的交互机制有收发消息,link和monitor.其中,收发消息通常用于正常的进程间通讯,而li ...

  5. Direct3D11学习:(零)常见问题及解决方法整理

    转载请注明出处:http://www.cnblogs.com/Ray1024   一.概述 在D3D11学习的这个系列中,单独写一篇文章来记录自己学习过程中遇到的问题及最后的解决方法. 这篇文章的目的 ...

  6. 最近一段时间开发客户端app的感悟

    关于android和cocos2d 凭着对大学时候写html+css的一点点的记忆,我还是认为android的布局xml文件还是参考了html+css,只是他更加臃肿!就想 android平台本身那样 ...

  7. [转]AutoResetEvent 与 ManualResetEvent区别

    在C#多线程编程中,这两个类几乎是不可或缺的,他们的用法/声明都很类似,那么区别在哪里了? Set方法将信号置为发送状态 Reset方法将信号置为不发送状态 WaitOne等待信号的发送 其实,从名字 ...

  8. IOS开发UI基础UIImageView属性属性

    UIImageView属性 1.Image 设置图片,默认显示 UIImageView *_imageView = [[UIImageView alloc]init]; _imageView.imag ...

  9. Device eth0 does not seem to be present,delaying initialization解决方法

    Bringing up interface eth0:  Device eth0 does not seem to be present, delaying initialization. 在linu ...

  10. VC使用libcurl模拟登录CSDN并自动评论资源以获取积分

    环境:Win7 64位+VC2008 软件及源码下载:(http://pan.baidu.com/s/1jGE52pK) 涉及到的知识点: C++多线程编程 libcurl的使用(包括发送http请求 ...