2021-08-29 Java基础语法

Java基础语法

注释、标识符、关键字

注释

用于解释,不会被执行,仅供写代码的人看
Java中的注释有三种:

  • 单行注释:只能注释一行文字
public class Hello {
    public static void main(String[] args) {
        //单行注释
        //输出一个HelloWorld
        System.out.println("HelloWorld");
    }
}

单行注释

  • 多行注释:可以注释一段文字
public class Hello {
    public static void main(String[] args) {
        /*多行注释
        输出一个HelloWorld*/
        System.out.println("HelloWorld");
    }
}
  • 文档注释
/**
 * @Description Hello
 * @Author 2021年8月29日某某
 */
public class Hello {
    public static void main(String[] args) {
        System.out.println("HelloWorld");
    }
}

标识符

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

标识符注意点
  • 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
  • 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或者数字的任何字符组成
  • 不能使用关键字作为变量名或方法名
  • 标识符是大小写敏感
  • 合法标识符:age123,$123,__1_value
  • 非法标识符:123age,abstract(关键字),都会报错。
    关键字不能作为标识符

关键字

abstract
assert
boolean
break
byte
case
catch
char
class
const
continue
default
do
double
else
enum
extends
final
finally
float
for
goto
if
implements
import
instanceof
int
interface
long
native
new
package
private
protected
public
return
strictfp
short
static
super
switch
synchronized
this
throw
throws
transient
try
void
volatile
while


数据类型

  • 强类型语言

    • 要求变量的使用严格符合规定,所有变量都必须先定义后才能使用
      强字符语言错误
      强字符语言
  • 弱类型语言

  • Java的数据类型分为两大类

  • 基本类型
    1、基本类型分为数值类型boolean类型
    2、数值类型分为整数类型浮点类型以及字符类型
    3、整数类型:表1
    4、浮点类型:表2
    5、字符类型:表3
    6、boolean类型:表4

表1:

类型字节数字节范围
byte1-128~127
short2-32768~32767
int4–2147483648~2147483647
long8-9223372036854775808~92233720368547755807

表2:

类型字节数
float4
double8

表3:

类型字节数
char2

表4:

类型字节数字节范围
Boolean1true,false
  • 引用类型
    1、类
    2、接口
    3、数组

字节

1、位:bit,计算机内存数据存储的最小单位
2、字节:byte,计算机中数据处理的基本单位,B
3、1B=8bit
4、字符:计算机中使用的字母、数字、字和符号

1024B=1KB
1024KB=1M
1024M=1G

整数扩展:

进制:
二进制:0b
十进制:
八进制:0
十六进制:0x

public class jinzhi {
    public static void main(String[] args) {
        int i=10;//十进制
        int i2=010;//八进制0
        int i3=0x10;//十六进制0x 0~9,A~F
        int i4=0b10;//二进制0b
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println(i4);
    }
}

进制表示方法

浮点数扩展

float 有限 离散 舍入误差 大约 接近不等于
double
最好完全避免使用浮点数进行比较
银行业务怎么表示?
BigDecimal 数学工具类

字符扩展

所有的字符本质还是数字
编码 Unicode表 2字节 65536=216 Excel

public class zifuzhuanhuan {
    public static void main(String[] args) {
        char a='a';// \u0061
        System.out.println((int)a);
    }
}

字符强制转换
char对应的Unicode编码表

转义字符

\t 制表符 空格
\n 换行
。。。


类型转换

1、由于java是强类型语言,有时候运算需要用到类型转换
低--------------------------------------------------------------------->高
byte,short,char->int->long->float->double
2、运算中,不同类型的的数据先转化为同一类型,然后进行运算

    注意点:
     1、不能对布尔值进行转换
     2、不能把对象类型转换为不相干的类型
     3、在把高容量转换成低容量的时候,强制转换,反之自动转换
     4、转换的时候可能存在内存溢出或者精度问题
public class leixingzhuanhuan {
    public static void main(String[] args) {
        int i=128;
        byte b=(byte)i;//强制转换 (类型)变量名 高--低
        System.out.println(b);//内存溢出
        double c=i;  //自动转换  低--高
        System.out.println(c);
        System.out.println((int)23.7);//23  精度问题
        System.out.println((int)-45.89f);//-45  精度问题
        char a='a';
        int d=1+a;
        System.out.println(d);//自动转换
        System.out.println((char)d);//强制转换
        /*
        注意点:
         1、不能对布尔值进行转换
         2、不能把对象类型转换为不相干的类型
         3、在把高容量转换成低容量的时候,强制转换,反之自动转换
         4、转换的时候可能存在内存溢出或者精度问题
         */
    }
}

强制转换

类型转换中存在的问题

public class QianZhiZhuanHuangCunZaiDeWenTi {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用个下划线分割
        int money=10_0000_0000;
        System.out.println(money);
        int year=20;
        int total=year*money;
        System.out.println(total);//计算时候溢出了
        long total0=year*money;
        System.out.println(total0);//默认是int,转换前已经存在问题了
        long total1=money*((long)year);
        System.out.println(total1);//计算前先把一个数强制转换解决溢出问题
        long total2=(long)money*year;
        System.out.println(total2);//计算前先把一个数强制转换解决溢出问题

    }
}

数字溢出问题


变量、常量

变量

变量:可变化的量,每个变量都必须声明其类型,它是程序中最近本的存储单元,其要素包括变量名,变量类型和作用域。
数据类型 变量名=值;
可以使用逗号隔开来声明多个同类型的变量。

int a=1,b=2,c=3;//少于
int d=4;
String name="123";
char x='x';
double c=3.14;

注意事项:

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

变量作用域:
1、类变量 static关键字,从属于类的
2、实例变量 类里面方法外面,从属于对象,如果不初始化,就是这个类型的默认值,说有数字类型默认值都是0或者0.0 u0000,Boolean默认是false,除了基本类型,其余都是null
3、局部变量 方法和语句块中,必须声明和初始化

public class Variable{
static int a=0;//类变量 需要static关键字
String str="sd";//实例变量
public void method(){
int i=0;//局部变量 
}
}

常量

常量:初始化就不能改变的值,使用final修饰,常量名一般大写。

final double PI=3.14;

命名规范:

1、见名思议
2、类名:首字母大写加驼峰原则:LeiMing
3、类成员变量、局部变量、方法名:首字母小写加驼峰原则:mingZi
4、常量:大写字母加下划线:MAX_VALUE


运算符

  1. 算术运算符
    算术运算符
    在这里插入图片描述
    如果多个不同整数类型相加,有一个数为long,结果就是long类型,如果没有long的时候结果都为int,无论里面是否含有int。
    如果多个不同类型相加,有一个数为double,结果就是double类型。
package operater;

public class SuanShuYunSuanFu {
    public static void main(String[] args) {
     //++ --
        int a=3;
        int b=a++;//执行完这行代码后,先给b赋值,再自增
        //a=a+1;
        System.out.println(a);//4
        //a=a+1;
        int c=++a;//执行完这行代码前,先自增,再给b赋值
        System.out.println(a);//5
        System.out.println(b);//3
        System.out.println(c);//5

    }
}

在这里插入图片描述
幂运算 23=8

Math.pow(2,3)=8.0;

很多运算是通过工具类来运算的

  1. 赋值运算符以及扩展
     赋值运算符以及扩展
  2. 比较运算符
    比较运算符
  3. 逻辑运算符
    逻辑运算符
  4. 条件运算符:布尔表达式 ? 表达式1 :表达式2
    如果表达式是true,则结果是表达式1,否则是表达式2.
  5. 位运算符:&,|,^,~,>>,<<,>>>
A=0011 1100
B=0000 1101

A&B = 000 1100
A|B = 0011 1101
A^B = 0011 0001
~B =1111 0010

<<乘2 , >>除2

//字符串连接 + ,String
System.out.printIn(""+a+b);//1020
System.out.printIn(a+b+"");//30

运算符的优先级

下表中优先级上行优先于下行
运算符优先级
表1 运算符的优先级


包机制、JavaDoc

包机制

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

package pkg1[.pkg2[pkg3...]];

一般利用公司域名倒置作为包名
使用包成员时,需要在Java程序中import导入该包

import pkg1[.pkg2[pkg3...]].(classname|*);

JavaDoc

  • javadoc命令是用来生成自己API文档的
  • 参数信息:
    • @author 作者名
    • @version 版本号
    • @since 指明需要最早使用的jdk版本
    • @param 参数名
    • @return 返回值情况
    • @throws 异常抛出情况

使用IDEA生成JavaDoc文档
参考链接:https://blog.csdn.net/qq_46921028/article/details/108897045
1、打开 IDEA,点击 Tools-> Generate JavaDoc,这样会弹出生成JavaDoc文档的配置页面
在这里插入图片描述

2、进行配置参数:
Locale:输入语言类型: zh_CN
Other command line arguments: -encoding UTF-8 -charset UTF-8
在这里插入图片描述

3、他会在输出目录里生成JavaDoc。
在这里插入图片描述


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值