Java语言基础

1.基础语言要素

1)标识符:给类、方法、变量起的名字

A.必须以字母或下划线或 $ 符号开始,其余字符可以是字母、数字、$ 符号和下划线。

B.只能包含两个特殊字符,即下划线 _ 和美元符号 $ 。不允许有任何其他特殊字符。

C.标识符不能包含空格。

D.区分大小写。

2)关键字:只有系统才能用的标识符

  • 注意事项:
  • true、false、null不是关键字!是字面量。
  • main不是关键字!但是是一个特殊单词,可以被JVM识别,主函数是固定格式,作为程序的入口。
  1. 注释:单行注释://  多行注释:/* ……*/      文档注释:/**……*/
  • 注意事项:开发中类前、属性前、方法前,必须有文档注视。

2.八种基本数据类型

1)四种整数类型(byte、short、int、long):

byte:8位,用于表示最小数据单位,如文件中数据,-128~127

short:16位,很少用,-32768 ~ 32767

int:32位、最常用,-2^31-1~2^31 (21亿)

long:64位、次常用

  • 注意事项:
  • int i=5; // 5叫直接量(或字面量),即直接写出的常数。
  • 整数字面量默认都为int类型,所以在定义的long型数据后面加L或l。
  • 小于32位数的变量,都按int结果计算。
  • 强转符比数学运算符优先级高。见常量与变量中的例子。
    2)两种浮点数类型(float、double):
           float:32位,后缀F或f,1位符号位,8位指数,23位有效尾数。
           double:64位,最常用,后缀D或d,1位符号位,11位指数,52位有效尾数。
  • 注意事项:
  • 二进制浮点数:1010100010=101010001.0*2=10101000.10*2^10(2次方)=1010100.010*2^11(3次方)= . 1010100010*2^1010(10次方)
  • 尾数: . 1010100010  指数:1010  基数:2
  • 浮点数字面量默认都为double类型,所以在定义的float型数据后面加F或f;double类型可不写后缀,但在小数计算中一定要写D或X.X。
  • float 的精度没有long高,有效位数(尾数)短。
  • float 的范围大于long 指数可以很大。
  • 浮点数是不精确的,不能对浮点数进行精确比较。
    3)一种字符类型(char):
    char:16位,是整数类型,用单引号括起来的1个字符(可以是一个中文字符),使用Unicode码代表字符,0~2^16-1(65535)。
  • 注意事项:
  • 不能为0个字符。
  • 转义字符:\n 换行 \r 回车 \t Tab字符 \" 双引号 \\ 表示一个\
  • 两字符char中间用“+”连接,内部先把字符转成int类型,再进行加法运算,char本质就是个数!二进制的,显示的时候,经过“处理”显示为字符。
    4)一种布尔类型(boolean):true真 和false假。
    5)类型转换:           char-->
    自动转换:byte-->short-->int-->long-->float-->double                  
                  强制转换:①会损失精度,产生误差,小数点以后的数字全部舍弃。
      ②容易超过取值范围。

3.常量和变量

变量:内存中一块存储空间,可保存当前数据。在程序运行过程中,其值是可以改变的量。

1)必须声明并且初始化以后使用(在同一个作用域中不能重复声明变量)!

2)变量必须有明确类型(Java是强类型语言)。

3)变量有作用域(变量在声明的地方开始,到块{}结束)。变量作用域越小越好。

4)局部变量在使用前一定要初始化!成员变量在对象被创建后有默认值,可直接用。

5)在方法中定义的局部变量在该方法被加载时创建。

常量:在程序运行过程中,其值不可以改变的量。

  • 注意事项:
  • 字面量、常量和变量的运算机制不同,字面量、常量由编译器计算,变量由运算器处理,目的是为了提高效率。
    eg:小于32位数的字面量处理

byte b1 = 1; byte b2 = 3;

//byte b3 = b1+b2;//编译错误,按照int结果,需要强制转换

byte b3 = (byte)(b1+b2);

//byte b3 = (byte)b1+(byte)b2;//编译错误!两个byte、short、char相加还是按int算

System.out.println(b3); //选择结果:A编译错误B运行异常 C 4  D b3

byte b4 = 1+3;//字面量运算,编译期间替换为4,字面量4

//byte b4 = 4; 不超过byte就可以赋值

  • 不管是常量还是变量,必须先定义,才能够使用。即先在内存中开辟存储空间,才能够往里面放入数据。
  • 不管是常量还是变量,其存储空间是有数据类型的差别的,即有些变量的存储空间用于存储整数,有些变量的存储空间用于存储小数。

4.运算符与表达式

1)数学运算:+   -      *      /     %    ++   --

  • 注意事项:
  • +  -  *  / 两端的变量必须是同种类型,并返回同种类型。
  • % 取余运算,负数的余数符号与被模数符号相同, - 1 % 5 = - 1,1 % - 5 = 1;Num % n,n>0,结果范围[0,n),是周期函数。
  • 注意整除问题:1 / 2 = 0(整数的除法是整除)1.0 / 2 = 0.5   1D / 2 = 0.5
  • 单独的前、后自增或自减是没区别的,有了赋值语句或返回值,则值不同!
    eg1:自增自减

int a = 1;  a = a++;  System.out.println("a的值:"+a);

第1步:后++,先确定表达式a++的值(当前a的值)  a++ ---->1   

第2步:++,给a加1                              a  ---->2

第3步:最后赋值运算,把a++整个表达式的值赋值给a  a  ---->1

a被赋值两次,第1次a = 2,第2次把1赋值给1

eg2:自增自减

x,y,z分别为5,6,7  计算z + = -- y * z++ ;// x = 5,y = 5,z = 42

z = z + -- y * z++  à  42 = 7 + 5 * 7  从左到右入栈,入的是值

eg3:取出数字的每一位

              d = num%10;//获取num的最后一位数    num/=10; //消除num的最后一位

  1. 位运算:&  |  ~(取反) ^(异或)>>  <<  >>>
  • 注意事项:
  • 一个数异或同一个数两次,结果还是那个数。
  • |:上下对齐,有1个1则为1;&:上下对齐,有1个0则为0;(都为二进制)
  • &相当于乘法,| 相当于加法;&:有0则为0,| :有1则为1,^:两数相同为0,不同为1。
    3)关系运算符:>  <  >=  <=  ==  !=
    4)逻辑运算符:&&  ||(短路)  !  &  |
    eg:短路运算:&&:前为flase,则后面不计算;|| :前为true,则后面不计算

int x=1,y=1,z=1;

if(x--==1 && y++==1 || z++==1) //  || 短路运算后面的不执行了!

System.out.println(“x=”+x+”,y=”+y+”,z=”+z);//  0 , 2, 1

5)赋值运算符:=  +=  -=  *=  /=  %=

eg:正负1交替     

int flag= -1;  System.out.println(flag *= -1); ……

6)条件(三目)运算符:表达式1 ? 表达式2 :表达式3

  • 注意事项:
  • 右结合性:a > b ? a : i > j ? i : j 相当于 a > b ? a : ( i > j ? i : j )
  • 三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果由容量高的决定。如:int x = 4;     x > 4 ? 99.9 : 9;
    99.9是double类型,而9是int类型,double容量高,所以最后结果为9.9。
    7) 运算符优先级:括号 > 自增自减 >  ~ !  > 算数运算符 > 位移运算 > 关系运算 > 逻辑运算 > 条件运算 > 赋值运算

5.编程风格

MyEclipse/Eclipse中出现的红色叉叉:编译错误

编译错误:java编译器在将Java源代码编译为class文件的过程出现的错误,一般是语法使用错误!当有编译错误时候,是没有class文件产生,也就不能运行程序。

Java 程序结构:

 

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
weixin102旅游社交微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值