Java基础语法

注释

  1. 单行注释

//注释内容

  1. 多行注释

/*

注释内容

*/

  1. 文档注释

/**

注释

*@Description helloworld

*Author 狂神

*后边可以加@号(具体内容再说)

*/

标识符

Java所有的组成部分都需要名字,类名、变量名、方法名都被称为标识符。

关键字

public private protected

class static void

interface
等等

方法名:

main

变量名:

String teacher ="nanshan";

标识符注意点

  1. 所有的标识符都应该以字母(AZ,az),美元符$,下划线(_)开始。
  2. 首字符之后可以是字母(AZ,az),美元符$,下划线(_)或数字的任何字符组成。
  3. 不能使用关键字作为变量名或方法名。
  4. 标识符大小写敏感。

语言类型

强类型语言

  • 安全性高,速度慢(Java)
  • 要求变量的使用要符合规定,所有变量都必须先定义后才能使用

弱类型语言

  • vbscript JavaScript

变量

  • Java是一种强类型的语言,每个变量都必须声明其类型
  • Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。

注意事项

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
  • 变量名必须是合法的标识符。
  • 变量声明是一条完整的语句,每一个声明都必须以分号结束。

Java数据类型分为两类

  1. 基本数据类型

    1. 数值类型
      1. 整数类型
        • byte(1个字节)
        • short(2个字节)
        • int(4个字节)
        • long(8个字节)
      2. 浮点类型
        • float(4个字节)
        • double(8个字节)
      3. 字符类型
        • char(2个字节)
    2. Boolean类型
  2. 引用数据类型

    • 接口
    • 数组

注意:

  • long 类型定义时在数字末尾加个L(尽量用大写的L)
  • float类型定义时在数字末尾加个F
  • 字符只能是一个字
  • string 不是关键字,是一个类
  • float:有限,离散,会有误差,大约,接近但不等于(避免使用浮点数进行比较)
  • 使用类 BigDecimal —— 银行业务表示?钱
    • eg:
    • 1、
      • float f = 0.1f;
      • double d = 1.0/10;
      • System.out.println(f == d);//输出为false
    • 2、
      • float f1 = 1234567894556f;
      • double d1 = f1 +1;
      • System.out.println(f1 == d1);//输出为true

字节

位 (bit) :计算机内部数据存储的最小单元

字节 (byte) :计算机中数据处理的基本单位,用B表示。

1B = 8 bit

字符:计算机中使用的字母,数字,字和符号。

进制

二进制 0b

八进制 0

十六进制 0x

字符拓展

char c1 = 'a';

System.out.println(c1);

System.out.println((int)c1);

//所有的字符本质上还是数字

编码 Unicode 2字节 65536

excel最多有65536格

char c3 = '\u0061';

System.out.println(c3);//输出为a

转义字符

\t 制表符

\n 换行符

= = 和 equals 的区别

= = 比较对象的地址

类型转换

由于Java是强类型语言,进行某些运算时,需要类型转换。

运算中,不同类型的数据先转化为同一类型,然后进行运算。

强制类型转换

自动类型转换

小数的优先级大于整数

由低到高,不需要进行转换

//内存溢出:

int i = 128

byte b = (byte) i;

//输出:i为128,b为-128

注意:

  • 不能对布尔值进行转换
  • 不能把对象类型转换为不相干的类型
  • 在把高容量转换为低容量的时候,进行强制转换
  • 转换的时候可能存在内存溢出,或者精度问题

jdk新特性:数字之间可以用下划线分割 2000000000=20_0000_0000

int (27.5) = 27

int (-45.96f) = -45

char (98) = b

//转换问题:

int m = 10_0000_0000;

int n = 2;

long t = m*n; //在m*n运算时,结果自动转换为int,再赋给t

long t = m*(long)n; //正确写法

变量

Java变量是程序中最基本的存储单元

注意事项:

  1. 每个变量都有类型
  2. 变量名必须是合法的标识符
  3. 变量声明是一条完整的语句,因此每一个声明必须以分号结束

注意程序的可读性

变量的作用域

类变量

实例变量:方法体的外边,类的里面,从属于对象(数值默认0,布尔值默认false,除了基本类型,其他默认null)

局部变量:在方法体内部,必须声明和初始化值

常量

初始化后不能再改变值

eg:final double PI = 3.14;

一般常量名使用大写字符

//修饰符不存在前后顺序 static final public

变量的命名规范

所有变量,方法名,类名:见名知意

首字母小写和驼峰法则:类成员变量(monthSalary),局部变量,方法名(run(), runRun())

常量:大写字母和下划线(MAX_VALUE)

类名:首字母大写和驼峰法则

运算符

Java语言支持如下运算符:

算术运算符:+,-,*,/,%,++,--(一元运算符)

赋值运算符:=

关系运算符:>, <, >=, <=, !=, instanceof

逻辑运算符:&&,||,!

位运算符:&,|,^, ~,>>, <<, >>> 位运算的效率高

条件运算符 ? : (三元运算符;x?y:z)

扩展赋值运算符: +=,-=,*=,/=

ctrl + d 复制当前行到下一行

运算时,有long存在,结果都是long型的,若是byte,short运算,自动转成int型。

cast :转换

//a++, ++a 的区别:

ina a = 3;

int b = a++;//先给b赋值,再自增

int c = ++a;//先自增,再给c赋值

System.out.println(a);//输出为5

System.out.println(b);//输出为3

System.out.println(c);//输出为5

math.abs() 绝对值

幂运算:

double pow = Math.pow(2,3);

System.out.println(pow);//输出为8,(2^3)

逻辑运算符

boolean a = true;

boolean b = false;

System.out.println("b&&a"+(b&&a));//逻辑与运算,(短路运算)

System.out.println("a||b"+(a||b));//逻辑或运算

System.out.println("!(a&&b)"+(a&&b));//如果是真,则变为假,如果是假,则变为真

短路运算

//一开始是假,不在进行后一个值的判断

int c = 5;

boolean d = (c<4)&&(c++<4);

System.out.println(c);//结果为5,没有执行c++运算;

字符串连接符

int a = 10;

int b = 30;

System.out.println(a+b+"");//输出为30;

System.out.println(""+a+b);//输出为1020;

包机制

为了更好的组织类,Java提供了包机制,用于区别类名的命名空间

包语句的语法格式:package pkg1;

一般使用公司域名倒置作为包名

导入包:为了能够使用某一个包的成员,使用import

import package1(.classname|*);

www.baidu.com == com.baidu.www

不要让包中的类名重复

ctrl + 鼠标右键 查看

alt+回车 报错信息

阿里巴巴开发手册

Javadoc

javadoc 命令是用来生成自己的api文档的 JDK帮助文档

参数信息:

​ @author 作者名

​ @version 版本号

​ @since 指明需要最早使用的jdk版本

​ @param 参数名

​ @return 返回值情况

​ @throws 异常抛出情况

javadoc -encoding UTF-8 -charset UTF-8 doc.java

使用idea生成javadoc文档

posted @ 2021-03-08 17:14  道可道非  阅读(47)  评论(0)    收藏  举报