——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
Java基础语法总结
作为一个新手,接触java时,数量的掌握java的基础语法是有必要的,在次我总结一下我学习java基础语法时的一些体会。对于那些,描述型的东西我就不协会所,我主要说一下,需要注意的一些细节。
1、命名规范
Java语言严格区分大小写,书写规范很重要:
包名:多单词组成时所有字母都小写。
例如:xxxyyyzzz
package com.itheima;
类名接口名:多单词组成时,所有单词的首字母大写。
例如:XxxYyyZzz
class JavaDemo{}
变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。
例如:xxxYyyZzz
int javaNum;
public void javaTest(){}
常量名:所有字母都大写。多单词时每个单词用下划线连接。
例如:XXX_YYY_ZZZ
final PI_I
虽然不按照这样的书写规范,编译时不会报错,但是阅读性会很差,当后期,写的代码比较多的时候,只要通过格式就能看出这个是变量是类还是方法名,这样对我们的变成有很大的帮助,而且取名时,要有目的,表明意思。比如name表示姓名,getName(),表示获取姓名方法等等,这样会提高阅读性,别人看你代码的时候也容易读懂。
特别注意,你在命名是用到的特殊符号只能是“_”和“$”,别的符号在别一时会报错。值得注意的是空格符是有特殊含义的符号。
2、基本数据类型问题
在java中的常见数据类型有
整型:byte(8bit)shor(2*8bit)int(3*8bit)long(4*8bit)
整型默认为:int
浮点型:float(4*8bit)double(8*8bit)
浮点型默认为double
字符型:char(2*8bit)
布尔型:boolean(只能取值true和false不能取null)
在进行运算和复制的时候要注意存在超出范围,和类型提升的问题。
比如:
float f=4.5
这句话在编译时不能通过,能为4.5为double型,赋值给float会超出范围,这句话要运行成功,需要在4.5后面加f,变成float f=4.5时能够编译成功。
整型也是一样
01. class VarDemo
02. {
03. public static void main(String[] args){
04. long l = 123456789123;
05. System.out.println(l);
06. }
07. }
编译也会失败,需要在后面加l变成
01. class VarDemo
02. {
03. public static void main(String[] args){
04. long l = 123456789123l;
05. System.out.println(l);
06. }
07. }
时才能编译通过。
在执行运算的时候,容量小的类型会被自动提升为容量大的类型
比如:
01. class intDemo
02. {
03. public static void main(String[] args){
04. short s=2;
05. s=s+2;
06. System.out.println(l);
07. }
08. }
就会报错,因为2是int型,s+2被自动提升为int,赋值给short就会报错。可以把s+2强转为short来解决问题 s=(short)s+2;
以上都是新手在进行赋值和进行运算时容易忽略出现问题的细节。还需要注意的是byte,short,char之间做运算结果为int型的值.
一个操作数是long型,计算结果就是long型;
一个操作数是float型,计算结果就是float型;
一个操作数是double型,计算结果就是double型。
3运算符:
在运算时需要注意以下几点
整数与整数相除时,结果永远是整数,小数部分被忽略:
例如,下面代码的输出结果为6000
01. class OperatorDemo
02. {
03. public static void main(String[] args){
04. int x = 6370;
05. x = x / 1000 * 1000;
06. System.out.println(x);
07. }
08. }
short s=5;
s=s+5;两次运算赋值会异常
s+=5;为一次运算不会报异常
%:进行模运算时。运算结果的符号只与被模数的符号相同。
a++:先运算再+1;++a:先加以再运算。
字符串与其他数据类型之间的‘+’是用来做连接符的。
&与&&的区别
&:无论左边是true还是false右边都运算
&&:当左边为false时右边不运算
|和||的区别
|:无论左边是true还是false右边都运算
||:当左边为true时右边不运算
所以我们使用时,尽量使用&&和||这样会提高效率。
三元运算符:
(条件表达式)?表达式1:表达式2;
1)既然是运算符,一定会返回一个结果,并且结果的数据类型与表达式1,2类 型一致
2)表达式1与表达式2 的数据类型一致
3)使用三元表达式一定可以被if-else表示,反之则不一定成立。
之所以不一定能转换成if语句是因为三元运算符存在弊端,他的弊端是必须有一个结果。
public class SanYuan {
public static void main(String[] args){
int a=3,b=6;
int c=(a>b)?10:11;
System.out.println(c);
}
}
用if语句替换以上的代码
public class CaoGao {
public static void main(String[] args){
int a=3,b=6,c;
if (a>b)
c=10;
else
c=11;
}
}
以上是Java基础语法中常见的一些细节问题,处理好这些细节问题,会给我们编程提高效率。
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-