【学习笔记】java基础语法

【学习笔记】java基础语法,第1张

【学习笔记】java基础语法 目录 1. 注释 2. 标识符 3. 数据类型 4. 类型转换 5. 常量 6. 数学函数 7. 关系和boolean运算符、位运算符 8. 包机制
正文 1.注释

1.1单行注释

 //单行注释

1.2多行注释

 

1.3文档注释
既可以为类生成文档注释,也可以为方法生成文档注释

 

2. 标识符

任何变量、方法都有一个名字,这个名字就是标识符所有的标识符都由字母、美元符号 $ 、数字或者下划线组成,且只能以字母、$或者下划线开始。标识符大小写敏感不建议中文命名


3. 数据类型

3.1 java数据类型分为基本类型和引用类型

3.2 各数值类型的表示范围
byte:[-128,127]
short:[-32768,32767]
int:[-2147483648,2147483647]
long:[-9223372036854774808,9223372036854774807]

数字后加L表示long型的整数

 long l=30l;

小数后加F表示float型,不加F默认double类型

  float f=30F;

3.3 各进制的表示
二进制 0b整数

十进制 整数八进制 0整数十六进制 0x整数

避免使用浮点数进行比较,浮点数不能提供完全精确的结果,所以不应该被用于要求精确结果的场合。当需要精确计算时需要用BigDecimal类


4. 类型转换

低-------------------------------> 高
byte,short,int,long.float,double

4.1 强制类型转换 (高转低,可能会溢出或者精度问题)
格式:(强转类型)变量

int a=128;
byte b=(byte)a;//内存溢出
double d=2.5;
int a=(int)d;//精度问题

4.2 自动类型转换(低转高)

byte a=1;
int b=a;

不能将整型转换为boolean

int a=10;
        if(a=10){
            
        }

不能转为不相关的类型

JDK7新特性,数字之间可以用下划线分割

int a=10_0000_0000;
System.out.println(a);

所有数值类型的初始化为0或0.0

boolean默认false

其他类型默认null

常见溢出问题

  int a = 10_0000_0000;
    int b = 20;
    double c=a*b;
    System.out.println(c); 

输出:-1.47483648E9
原因是a*b运算时已经溢出

解决措施

int a = 10_0000_0000;
int b = 20;
double c=a*(double)b;
System.out.println(c);

输出:2.0E10

5. 常量

5.1 java中使用final表示常量,常量只能赋值一次,常量名习惯上大写

final int PI;
   PI=4;
   PI=6;//错误

补充
静态方法只能调用静态方法,只能使用类中的静态变量

5.2 命名规范

类成员变量、局部变量、方法名首字母小写驼峰原则类名首字母大写驼峰原则常量大写

6. 数学函数

Math类包含各种数学函数

6.1 求平方根sqrt函数
函数原型 static double sqrt( double a )

double y=Math.sqrt(4);
      System.out.println(y);

6.2 幂运算
函数原型 static double pow(double a,double b ) ab

6.3 整数余数的问题
函数原型 public static int floorMod(int x, int y )

int x=5;
int y=Math.floorMod(x+1,6);//将x+1转换为0~5的数
       System.out.println(y);

输出:0

6.4 三角函数
Math,sin
Math.cos
Math.tan
Math.atan
Math.atan2

6.5 指数函数、对数函数
Math.exp
Math.log
Math.logl0
Math.PI π 常量的近似值
Math.e e 常量的近似值

使用Math类的方法可以不用加Math,在package下面导入包即可
import static java.lang.Math.*;

7. 关系和boolean运算符、位运算符

7.1 关系运算符 <,>,>=,<=,!=,==
7.2 boolean运算符&&,||按照短路求值,具体就是condition1 && condition2 ,condition1为假,则表达式为假,condition2不再执行.
7.3 位运算符 &,|,>>,<<
&和|也可以作为boolean运算符,不采用短路求值。
<<,左移,低位添0,符号位不变。 >>右移,符号位不变

8. 包机制

为了解决同一个文件夹下同名的冲突,java引入了包机制,包实际上就是文件夹,不同包下可以建重名的类。
一般将公司的域名的倒置作为包名.
package [包名];此语句必须写在第一行

导包:当需要用其他包的类的方法就需要导包
import 包名.类名;
导入其他包所有的方法
import 包名.*;

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5703267.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存