一、标识符和关键字
 
关键字:
就是被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. Git 文件比较

    Git 的三个作业场: 工作区(Work Tree) 项目根目录下 .git 目录以外所有区域,是编辑项目文件的地方. 缓存区(Index) 工作区文件必须先保存在缓存区,之后从缓存区保存到仓库. 仓 ...

  2. http协议客户端向服务器端请求时一般需要发送的内容

    out.println("GET /shopping/index.html HTTP/1.1");//请求行 包括请求方式,文件路径, http协议版本(必写)请求头.... ou ...

  3. R Language

    向量定义:x1 = c(1,2,3); x2 = c(1:100) 类型显示:mode(x1) 向量长度:length(x2) 向量元素显示:x1[c(1,2,3)] 多维向量:multi-dimen ...

  4. iOS-开发技巧-页面布局

    #pragma mark - Life Cycle//1.初始化//2.view did load//3.view will appear…#pragma mark - System Delegate ...

  5. SQL Server里Grouping Sets的威力

    在SQL Server里,你有没有想进行跨越多个列/纬度的聚集操作,不使用SSAS许可(SQL Server分析服务).我不是说在生产里使用开发版,也不是说安装盗版SQL Server. 不可能的任务 ...

  6. SQL语句技巧:查询存在一个表而不在另一个表中的数据记录

    方法一(仅适用单个字段)使用 not in ,容易理解,效率低 select A.ID from A where A.ID not in (select ID from B) 方法二(适用多个字段匹配 ...

  7. SpringMVC——对Ajax的处理(包含 JSON 类型)

    一.首先要搞明白的一些事情. 1.从客户端来看,需要搞明白: (1)要发送什么样格式的 JSON 数据才能被服务器端的 SpringMVC 很便捷的处理,怎么才能让我们写更少的代码,如何做好 JSON ...

  8. 极简Unity调用Android方法

    简介 之前写了篇unity和Android交互的教程,由于代码里面有些公司的代码,导致很多网友看不懂,并且确实有点小复杂,这里弄一个极简的版本 步骤 废话不多说,直接来步骤吧 1.创建工程,弄大概像这 ...

  9. ACCESS作为网站数据库的弊端

    现在网上绝大多数网站都是ACCESS+ASP的形式,因为ACCESS结构简单容易处理,而且也能满足多数的网站程序要求. ACCESS是小型数据库,既然是小型就有他根本的局限性,以下几种情况下数据库基本 ...

  10. WebApi传参总动员(填坑)

    本以为系列文章已经Over,突然记起来前面留了个大坑还没填,真是自己给自己挖坑. 这个坑就是: (body 只能被读取一次)Only one thing can read the body MVC和W ...