1、Java关键字
被java语言赋予特殊意义的英文单词,java关键字都是小写的,例如:
注意:goto和contast作为保留字存在,不能被使用;判断是否是关键字,在使用开发工具时,关键字会被高亮显示。
2、标识符
(1)标识符是指给类,接口,方法,变量等起名字的字符序列,其组成如下:英文字母、数字、%和_ 。
(2)标识符不能有数字开头;不能为java关键字;区分大小写;一般命名遵循驼峰命名法;
(3)补充:类名、接口名首字母大写;方法名首字母小写;局部变量、成员变量名首字母一般小写;静态变量全部大写。
———————————————————————————————————————————
*(1)下列命名哪些是规范的?
HelloWorld,DataClass,_983,$bS5_c7,class,DataClass#,98.3,HellWorld
正确:HelloWorld,DataClass,_983(不推荐),$bS5_c7(不推荐),HellWorld
———————————————————————————————————————————
3、注释
(1)用于解释说明程序的文字。对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。对于文档注释,是java特有的注释,其中注释内容可以被JDK提供的工具 javadoc 所解析,生成一套以网页文件形式体现的该程序的说明文档。
(2)单行注释 格式: //注释文字
多行注释 格式: /**
*注释文字
*注释文字
**/
文档注释 格式: /**
*注释文字
*注释文字
**/
(3)注释的作用:解释说明程序,提高了代码的阅读性;可以帮助我们调试程序。
4、变量
(1)在程序的执行过程中,其值在某个范围内可以发生改变的量
(2)变量的定义格式:
A: 数据类型 变量名 = 初始化值;
B: 数据类型 变量名;
变量名 = 初始化值;
5、数据类型
(1)java数据类型分为两大类:基本类型和引用类型。
(2)基础类型的内存大小和取值范围以及默认值如下:
数据类型 | 关键字 | 在内存中占用的字节数 | 取值范围 | 默认值 |
布尔型 | boolean | 1byte(8位) | true,false | false |
字节型 | byle | 1byte(8位) | -128~127 | 0 |
字符型 | char | 2byte(16位) | 0~2^16 – 1 | ‘\u0000’ |
短整型 | short | 2byte(16位) | -2^15~2^15 -1 | 0 |
整型 | int | 4byte(32位) | -2^31~2^31 -1 | 0 |
长整型 | long | 8byte(64位) | -2^63~2^63 -1 | 0 |
单精度浮点型 | float | 4byte(32位) | 1.4013E-45~3.4028E+38 | 0.0F |
双精度浮点型 | double | 8byte(64位) | 4.9E-324~1.7977E+308 | 0.0D |
(3)数据类型的转换
- boolean类型不参加类型转换
- 默认转换 (从小的类型到大的类型)
byte/short/char–>int–>long–>float–>double
- 强制转换(从大的类型到小的类型)
转换会失去精度,一般不推荐,格式:目标数据类型 变量名 = (目标数据类型) (被转换的数据);
———————————————————————————————————————————
*(1)以下的变量定义正确吗? int i1 = 600; long l1 = 88888888888;
第一个正确,第二个错误。第二个long类型要在最后加L,即 88888888888L。
*(2)下面两种方式有区别吗? float f1 = 12.345f; float f2 = (float)12.345;
有区别,第一个是定义一个float类型并赋值。第二个申明一个float类型将double类型的值强转为float类型并赋值。
*(3)下面的程序有问题吗,如果有,在哪里呢?
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
byte b4 = 3 + 4;
有问题,byte = b1 + b2。byte在计算是会先自动转成int类型在进行运算,算出来的值是int类型,应该把结果进行强转转成
byte类型。而3+4是常量类型,算出来结果在byte取值范围,所以还是byte类型。
*(4)下面的操作结果是什么呢? byte b = (byte)130;
结果是-126。byte的取值范围是-128~127,超出范围后将从头开始取值。
*(5)下面的代码执行结果是什么? System.out.println(‘a’ + 1); System.out.println(“a” + 1);
结果是98,”a1″。字符参与运算是查找ASCII里面的值,字符串参与运算实际是字符串拼接。
———————————————————————————————————————————
6、运算符
(1)算术运算符
注意:
+运算符的其他作用:如果+符号的两边存在字符串,就是字符串拼接。
/运算符的两边如果是整数,结果则是整数;/运算符的两边存在小数,则结果默认为double类型。
(2)赋值运算符
= , +=, -=, *=, /=, %=
———————————————————————————————————————————
*(1)下面的两段代码哪有问题?
short s = 1; s = s + 1;
short s = 1; s += 1;
第一段有问题,s=s+1,s+1的计算结果默认用int类型存储,所有类型不匹配,应该加一个强转。
第二段没有问题,s+=1,自动存在一个默认强制转换,相当于 s = (short)s+1。
———————————————————————————————————————————
(3)关系运算符
注意:
比较运算符的结果都是boolean类型的。
(4)逻辑运算符
&和&&, | 和 || 的区别:&,| 两边的判断都要执行;当使用&&时,前者的判断结果为false,后者不用执行判断;当使用 || 时,前者的判断结果为true,后者不用判断。
———————————————————————————————————————————
*(1)下面两端代码的输出分别是多少?
int a = 5; int a = 5;
if(a < 6 || ++a > 5) { if(a < 6 | ++a > 5) {
System.out.println(a); System.out.println(a);
} }
第一段代码输出为5,第二段代码输出为6。原因是 || 和 | 的不同,|| 先判断a < 6为true,符合条件输出a的值。| 无论判断结果都要执行,因此a < 6 | ++a > 5都执行,符合条件输出a的值。
———————————————————————————————————————————
(5)位运算符(了解)
(6)三目运算符
格式如下:
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
7、流程控制语句
分类:顺序结构、选择结构、循环结构
(1)顺序结构:程序中最简单、最基本的结构。总的来说,先执行前面的语句,在执行后面的语句,从上到下执行语句。
(2)选择结构:也成为分支结构。代码先进行逻辑判断,通过逻辑判断的结果产生不同的选择,进入不通过的分支语句。Java提供的两种不同选择结构:if语句、switch语句
a)if语句:
第一种格式:
if(关系表达式){
代码块;
} else {
代码块
}
具体流程:先对if后面的表达式进行判断,如果是true,则执行if里面的代码块;反之执行else的代码块。
第二种格式:
if(关系表达式1){
代码块;
} else if(关系表达式2){
代码块
}
…………
else{
代码块;
}
具体流程: 具体流程:先对if后面的表达式进行判断,如果是true,则执行if里面的代码块;如果是false跳过if的if里面的代码块,接着对紧挨的else if后面的表达式进行判断,通上面的做法一样,直到最后,前面的表达式都没满足就执行else的代码块。注意点:一般情况下,if和else if里的关系表达式的情况是排斥的,即满足其中一个关系表达式,则其他的表达式都不满足。
b)switch语句
格式:
switch(表达式) {
case 值1:
代码块1;
break;
case 值2:
代码块2;
break;
………
default:
代码块n+1;
break;
}
具体说明:表达式里面可以是byte,short,int,char类型;JDK5以后可以是枚举;JDK7以后可以是字符串。case:后面的值就是要表达式进行比较的值,并且case后面的值必须是常量。break:表示程序到这里中断,跳出switch语句。default:如果所有的情况都不匹配,就执行这里。
———————————————————————————————————————————
*(1)下面代码执行的结果是什么?
int a = 4;
switch(a) {
case 0: System.out.println(a);
case 1: System.out.println(a);
case 2: System.out.println(a);
case 3: System.out.println(a);
case 4: System.out.println(a);
case 5: System.out.println(a);
default: System.out.println(“not find!”);
}
结果输出4(换行)4(换行)not find。 原因:在每个case语句后面没写break跳出导致case穿透。当满足case 4的情况下,会执行接下来的case情况下的语句,直到出现break或者继续执行下一个case情况下的语句。
———————————————————————————————————————————
(3)循环结构
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。
a)for循环语句
for(初始化语句;判断条件语句;控制条件语句) {
循环体语句;
}
b)while循环语句
while(判断条件语句) {
循环体语句;
}
c)do…while语句
do {
循环体语句;
}while((判断条件语句);
d)foreach语句(个人喜欢叫它增强for循环)
for(元素类型 元素变量x:待遍历的集合或数组) {
引用了变量x的java语句;
}
补充:foreach在javaweb项目中很常用,必须掌握。
(4)跳转控制语句
Java控制跳转包括break,continue,return 这三个语句。
a)break语句:
应用场景:在选择结构switch语句中;在循环语句中。
作用:跳出单层循环;跳出多层循环。
b)continue语句
应用场景:在循环语句中
作用:退出本次(一次)循环。
c)return语句
应用场景:在方法中
作用:结束一个方法。
———————————————————————————————————————————
*(1)在规定处补齐下面代码,使得满足要求
for(int x=1; x<=10; x++) {
if(x%3 == 0) {
//补齐代码
}
System.out.println(“Java基础班”);
}
如何让控制台输出2次:Java基础班 补充代码:break
如何让控制台输出7次:Java基础班 补充代码:continue
如何让控制台输出13次:Java基础班 补充代码:System.out.println(“Java基础班”);
———————————————————————————————————————————
今天的文章Java基础复习(二)————基础语法(上)[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/85086.html