1. java基础语法

本文详细介绍了Java编程的基础知识,包括标识符规则、数据类型、类型转换、变量、运算符以及命名规范。强调了浮点数精度问题,推荐使用BigDecimal进行精确计算。还提到了包机制和导入类的方式,以及编程中的命名规范和类型转换注意事项。
摘要由CSDN通过智能技术生成

注释

单行注释 ://

多行注释:/* xxxxx */

JavaDoc:文档注释 /** xxxxxx */

标识符

关键字

  • 所有标识符以 大写字母 小写字母 美元符号$和下划线_开头

  • 首字符后可以由 字母 美元符号$ 下划线_ 任意组合

  • 不能使用关键字作为变量名

  • 标识符大小写敏感

数据类型

强类型语言

  • 要求变量的使用要严格规定,所有变量都必须定义才能使用

java数据类型两大类

基本类型
  • 数值类型

    byte:1个字节 (8bit) -128 - 127

    short:2个字节

    int:4个字节

    long:8个字节 //long num = 30L(L用来区分long类型)

    float:4个字节 //float num = 5.1f(f用来区分float)

    double:8个字节

    char:2个字节 //代表一个字 ‘字’

    boolean类型:1个字节 只有true和false

引用数据类型
  • 接口
  • 数组

java拓展

整数拓展

0b:二进制

0:八进制

0x:十六进制

浮点数拓展

银行业务怎么表示

float f = 0.1f;

double d = 1.0/10;

f==d false

float d1 = 1231314214412f;

float d2 = d1+1;

d1==d2 true

总结:float 有限 离散 舍入误差 接近但不等于

​ 最好不适用浮点数进行比较

​ 用一个类 Big Decimal(数学工具类)

字符拓展

  • 所有的字符本质还是数字

  • 编码 Unicode 2字节 0----65536个字符

  • a的unicode编码 ‘\u0061’

  • 转义字符 \t \n 例:“Hello\tworld\n”

类型转换

byte, short ,char -> int -> -> long -> float -> double

强制转换

高—>低

int i =1;

byte a = byte(i);

自动类型转换

低 ----> 高

int i =128;

double b = i;

注意点

  1. boolean不能进行转换
  2. 不能把对象类型转换为不相干的类型
  3. 在高容量转换到低容量,强制转换
  4. 转换可能存在内存溢出,或者精度问题!
  5. JDK7新特性:数字之间可以用下划线分割 : 100=1_0_0
  6. 操作数比较大 注意溢出问题
  7. 用大写L(容易辨别)

变量

//实例变量
int float double 默认值为0 0.0
//变量类型 变量名字 = new HelloWorld()
helloWorld.name;
//布尔值:默认为flase
//除了基本类型,其余都是默认值null
//类变量  static
static double salary =2500;
System.out.println(salary);//可以不用new
//常量 final 运行过程中不能被改变
static final double pi = 3.14;//修饰符不存在先后顺序

命名规范

  1. 类成员变量 (首字母小写和驼峰原则):monthSalary
  2. 局部变量 (首字母小写驼峰原则)
  3. 常量:大学字母和下划线 : MAX_VALUE
  4. 类名:首字母大写和驼峰原则:Man、GoodMan
  5. 方法名: 首字母小写和驼峰原则:run(), runRun()

运算符

  1. 快捷键:ctrl + d:复制到下一行

  2. 多个操作数相加,以最高位为准

    byte, short ,char -> int -> -> long -> float -> double

  3. 取余:%

  4. && 会短路:(c<4)&&(c++)

Math.

pow():幂函数

位运算

二进制

A = 0011 1100

B = 0000 1101

A&B = 0000 1100

A|B = 0011 1101

A^B = 0011 0001

~B = 1111 0010

面试题

<< 左移 >> 右移

2*8怎么运算最快?

2<<3

效率极高

字符串连接符

连接的类型只要有String 就会是连接的作用

System.out.println(""+a+b);
System.out.println(a+b+"");  //先运算
1020
30

三元运算符

score < 60 ? "及格" : "不及格";

包机制

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

com.baidu.www

为了能够使用某一包的成员,我们需要在java程序中导入

import …*; 导入报下包下所有类

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值