二、基本语法

1.java关键字的使用
定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
特点:关键字中所字母都为小写

2.保留字:现Java版本尚未使用,但以后版本可能会作为关键字使用。
注意:自己命名标识符时要避免使用这些保留字

3.标识符的使用
定义:凡是自己可以起名字的地方都叫标识符。
涉及到的结构:类名、变量名、方法名、接口名、包名、常量名

规则:(必须要遵守。否则,编译不通过)

由26个英文字母大小写,0-9 ,_或 $ 组成
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。

规范:(可以不遵守,不影响编译和运行。但是要求大家遵守)
包名:多单词组成时所字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

注意点:在起名字时,为了提高阅读性,要尽量意义,“见名知意”。

1.变量的分类
1.1 按数据类型分类


//1.整型:byte (1字节:-128~127) / short (2字节) / int (4字节) / long(8字节)
//通常,我们将一个整型变量定义为int。
//如果定义long型变量,必须后缀为:l或L
//整型的常量,默认为int型。
//2.浮点型:float (4字节)/ double (8字节)
//从存储数据的表数范围上讲:float的范围比long要大。
//如果定义float型变量,必须后缀为:f或F
//通常,我们将一个浮点型变量定义为double.
//浮点型的常量,默认为double型
//3.字符型:char (2字节)
//通常情况下,声明一个字符,使用一对‘‘
//char的不同表示方式:1.声明一个字符 2.声明转义字符 3.使用Unicode码(了解)
//4.布尔型:boolean
//只能保存true 或 false. 不能取值为null. (Boolean:null)
//常常在条件判断、循环中,使用boolean型变量

1.2 按声明的位置分类(了解)

2.定义变量的格式:
1)数据类型 变量名 = 初始化值
2)数据类型 变量名;
变量名 = 初始化值;

3.变量使用的注意点:
1)变量必须先声明,后使用。
2)变量都有其定义所在的一对{}。这一对{}即为其作用域。
3)变量只有在其定义的作用域内才有效。
4)变量在定义时,一定会包含:数据类型,变量名,初始化值。
4.变量类型转换
4.1 涉及到的基本数据类型:
4.2 自动类型转换(只涉及7种基本数据类型):
容量小的数据类型和容量大的数据类型的变量做运算,运算的结果为容量大的数据类型。
byte 、short 、char --> int --> long --> float --> double
特别地,byte、short、char三者之间做运算,结果为int型。

4.3 强制类型转换(只涉及7种基本数据类型):
1.自动类型提升的逆过程。
2.容量大的数据类型的变量如果想转换为容量小的数据类型的变量,就需要使用强制类型符进行转换。
3.强制类型转换符:()
注意点:强转过程中,有可能出现精度损失的情况。

4.4 String与8种基本数据类型间的运算
1.String类属于引用数据类型的变量
2.String类型的变量值使用一对""括起来表示。
3.String类与基本数据类型(8种)变量之间只能做连接运算:+
4.String类与基本数据类型(8种)变量做运算的结果为:String类型

1.编程中涉及的进制及表示方式:
二进制:0,1 ,满2进1.以0b或0B开头。
十进制:0-9 ,满10进1.
八进制:0-7 ,满8进1. 以数字0开头表示。
十六进制:0-9及A-F,满16进1. 以0x或0X开头表示。此处的A-F不区分大小写。
如:0x21AF +1= 0X21B0

算数运算符

1.取余:% : 余数的符号与被模数的符号相同
2.(前)++ :先自增1,然后再运算
(后)++ :先运算,后自增1
3.(前)-- :先自减1,然后再运算
(后)-- :先运算,后自减1
4. 连接符:+:只适用于String 和其他类型的变量之间。结果一定是String型。

赋值运算符   “ = ”

比较运算符

1.运算的结果,都是boolean类型。
2. == 和 != 也适用于非数值型的变量。

逻辑运算符

1.运算符操作的是boolean型变量,运算的结果也为boolean类型
2.
//& 与 && : 两个符号判断以后的结果是相同的。
//相同点:如果符号左边的值为true,两个运算符都要执行符号右边的运算。
//不同点:如果符号左边的值为false,&:仍然要执行符号右边的运算。&&:不在执行符号右边的运算
//开发中:习惯于使用:&&

// | 与 ||:两个符号判断以后的结果是相同的。
//相同点:如果符号左边的值为false,两个运算符都要执行符号右边的运算。
//不同点:如果符号左边的值为true,&:仍然要执行符号右边的运算。&&:不在执行符号右边的运算
//开发中:习惯于使用:||

位运算符

1.操作的都是数值型变量
2. << : 在一定范围内,每左移一位,相当于数值 * 2 :过犹不及
>> : 在一定范围内,每右移一位,相当于数值 / 2
>>>:右移以后,最高位拿0补。

6.三元运算符:(条件表达式)? 表达式1 : 表达式2;
【典型代码】
//获取两个整数的较大值
int m = 10,n = 10;
int max = (m > n)? m : n;
System.out.println("较大值为:" + max);
//获取三个整数的最大值
//方式一:
int num1 = 23,num2 = 44,num3 = 2;
//int max1 = (num1 > num2)? num1 : num2;
//int max2 = (max1 > num3)? max1 : num3;
//方式二:
int max2 = (((num1 > num2)? num1 : num2) > num3)? ((num1 > num2)? num1 : num2) : num3;
System.out.println(max2);
【特别说明的】
1.条件表达式的结果为boolean.
2.根据boolean类型的值,决定执行表达式1 (true) 还是表达式2 (false).
3.表达式1 与 表达式2 要保持一致!
4.三元运算符可以相互嵌套

5.三元运算符一定可以转换为使用if-else实现。反之,不成立。
如果既可以使用三元运算符,又可以使用if-else,建议使用三元运算符。因为:简单,执行效率高。

顺序结构:程序从上到下执行。
分支结构:
if-else 和 switch-case
循环结构:
for
while
do-while

1.if-else条件判断结构
1.结构一:
if(条件表达式){
执行代码块;
}

结构二:
if(条件表达式){
执行代码块1;
}else{
执行代码块2;
}

结构三:
if(条件表达式1){
执行代码块1;
}else if(条件表达式2){
执行代码块2;
}else if(条件表达式3){
执行代码块3;
}
...
else{
执行代码块2;
}

2.说明:
1.else结构:可选的。
2.如果两个条件表达式没有公共的交集,此时两个else if结构,可以交换顺序。
如果两个条件表达式有公共的交集,"即为包含关系时",要求将范围小的条件表达式放在范围大的条件表达式的上面,此时两个条件表达式才有可能都被执行到。
3.if-else可以嵌套使用的
4.如果if-else中的执行语句只有一行,那么可以省略其所在的一对{}.但是不建议大家省略.

2.switch-case选择结构
1.结构:
switch(表达式){
case 常量1:
执行语句1;
//break;
case 常量2:
执行语句2;
//break;
...
default:
执行语句n;
//break;
}
2.说明:
1.根据case中的情况,选择满足条件的case进入执行其语句。执行完此case中的语句后,仍会继续向下执行其他的case语句,直到遇到break或者执行完所有的case结束。
2.break:可以使用在switch-case结构中,表示结束当前的switch-case结构。
3.default:是可选的,同时位置是灵活的。
4.switch中的表达式代表的数据类型只能是如下的这些:byte short char int 枚举类的对象 String(jdk7.0新增)
5.switch-case适用于变量取值不多,而且表达式满足指定的6种变量类型的情况。
6.如果多个case中的执行语句相同,可以合并。
7.凡是使用switch-case实现的结构,都可以转换为if-else实现。
反之,不成立。
8.在switch-case和if-else都可以使用的情况下,switch-case的执行效率更高一些。

1.循环结构的四要素
①初始化条件
②循环条件 --->boolean类型的结果
③循环体
④迭代条件
说明:当循环条件返回false时,结束循环结构
2.三种循环结构:
2.1 for循环结构
for(①;②;④){
③;
}

执行过程:①-②-③-④-②-③-④-②-③-④-.....-②
2.2 while循环结构

while(②){
③;
④;
}

执行过程:①-②-③-④-②-③-④-②-③-④-...-②
说明:
在while循环的{}内,别忘了声明④,如果忘了,会导致死循环的出现.我们写程序,需要避免死循环!

总结:
1.只要是循环的需求,都可以考虑使用for循环,或者使用while循环.
2.for循环和while是可以相互转换的!
3.不同点:关于初始化在出了循环结构以后的调用上:while还可以调用,for不可以调用了。

2.3 do-while循环结构

do{
③;
④;
}while(②);

执行过程:①-③-④-②-③-④-②-③-④-...②

说明:do-while:至少执行一次循环体!

3.“无限循环”结构: for(;;) 或者 while(true)

总结:如何结束一个循环结构?
①循环条件返回false时
②在循环体中,满足某个条件的情况下,执行break

4.嵌套循环
1.嵌套循环:一个循环结构a,作为另一个循环结构b的循环体出现。
内层循环:循环结构a
外层循环:循环结构b

2.说明:
1)外层循环控制行数,内层循环控制列数。
2)内层循环循环次数为m次,外层循环循环次数n次,则一共需要循环m * n次。

break与continue

时间: 2024-11-06 11:03:52

二、基本语法的相关文章

jQuery 入门教程(二): 基本语法

学习jQuery之前需要你有下面几个方面的基本知识 HTML CSS JavaScript jQuery 的基本语法 $(selector).action() $ 符合定义这是一个jQuery语句 (selector) 用来选择某个HTML元素,其语法和CSS的selector语法一样. action() 定义操作该HTML元素的方法. 比如: $(this).hide() – 隐藏当前元素. $("p").hide() – 隐藏所以 <p> 元素. $(".te

Freemaker(二)语法介绍

一.FreeMarker模板文件组成 ①.文本,直接输出的部分 ②.注释,即<#--...-->格式不会输出 ③.FTL指令:FreeMarker指令,和HTML标记类似,名字前加#予以区分,不会输出 ④.插值(Interpolation):即${..}或者#{..}格式的部分,将使用数据模型中的部分替代输出 1. FTL指令规则 FreeMarker有三种FTL标签,这和HTML的标签是完全类似的 开始标签:<#directivename parameters> 结束标签:<

构建Mysql三部曲之二 概念语法

一.基本概念 SQL(Structured Query Language) 结构化查询语言 SQL 语言包含4个部分: 1.数据定义语言(DDL),例如:CREATE.DROP.ALTER 等语句 2.数据操作语言(DML),例如:INSERT(插入).UPDATE(修改).DELETE(删除)语句 3.数据查询语言(DQL),例如:SELECT 语句 4.数据控制语言(DCL),例如:GRANT.REVOKE.COMMIT.ROLLBACK 等语句 MySQL 支持标准的 SQL 语句,也有自

Jade模板引擎学习(二)语法:代码、变量、循环、过滤器及mixin

Jade语法 一.代码 不会被缓冲代码 ul - for(var i=0; i<3; i++) li Jade Engine 会转换为: <ul> <li>Jade Engine</li> <li>Jade Engine</li> <li>Jade Engine</li> </ul> 被缓冲代码 p= 'Hello Jade' 会转换为: <p>Hello Jade</p> 注意:

Lua 学习笔记(二)语法、类型、值

首先Lua执行的每一段代码都称之为“程序块”,一个程序块也就是一连串的语句或命令,例如一个源码文件或一行代码.Lua语句之间并不需要分隔符,如代码中的换行就不起任何作用,当然为了养成编码习惯当两条或者多条语句并列时最好使用分隔符进行分隔,如以下的四种都是合法的. x = 1; y = 2 x = 1 y = 2 x = 1; y = 2; x = 1 y = 2 一.标识符规范 Lua中的标识符可以是由任意字母.数字.下划线组成的字符串,但不能以数字开头.还有,应避免使用以一个下划线并跟着一个或

php 正则表达式二.基本语法

官方手册正则语法:http://php.net/manual/zh/reference.pcre.pattern.syntax.php 正则表达式在线测试工具:regexpal 正则表达式的匹配先后顺序: 1.模式单元 2.重复匹配 ? * + {} 3.边界限定 ^ $ b B 4.模式选择 | 1.分隔符:当使用 PCRE 函数的时候,模式需要由分隔符闭合包裹.分隔符可以使任意非字母数字.非反斜线.非空白字符. 例子: /foo bar/ #^[^0-9]$# http://i.cnblog

模板(二) 模板语法

一.模板参数列表 模板参数列表是一个逗号分隔的一个或者多个模板参数的列表: template<typename T, typename U> 如上所示,typename T和typename U为模板参数: 二.模板参数 模板参数分为模板类型参数与非类型模板参数两种: 1)模板类型参数:模板类型参数可以看做类型说明符,可以向类类型说明符和内置类型一样使用: 2)非类型模板参数:非类型模板参数可以是一个整型,或者一个指向对象或者函数类型的指针或引用:非类型模板参数用来表示一个值, 需要通过一个特

js-template-art【二】语法

一.模板语法 1.变量使用与输出 <% if (user) { %> <h2><%= user.name %></h2> <% } %> 或: {{if user}} <h2>{{user.name}}</h2> {{/if}} art-template 同时支持 {{expression}} 简约语法与任意 JavaScript 表达式 <% expression %>. 2.原始输出 {{@value}}

黑马程序员——Java基础语法(二)语法结构

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------ Java 中的语法结构有四种 顺序结构:顾名思义,就是按照顺序执行语句 判断结构:if  switch 选择结构: 循环结构:for  while   do while 1. if 结构 if语句有三种结构. (1)if(条件表达式){执行语句;} (2)if(条件表达式){执行语句;} else{执行语句;} (3)if(条件表达式){执行语句;} else if(条件表达式

Python学习笔记(二)Python语法_1

[[email protected] ~]# ipython In [1]: import platform In [2]: print platform.uname() ('Linux', 'kaibin.test1', '2.6.32-431.el6.x86_64', '#1 SMP Fri Nov 22 03:15:09 UTC 2013', 'x86_64', 'x86_64') In [3]: dir(platform)        #查看platform支持的功能:dir(plat