一分钟熟悉java基础(第二部分)

类型转换

由于java是强类型语言,进行有一些运算的时候,需要用到类型转换

低--------------------------------------------------高

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

运算中,不同类型的数据要先转换为同一类型,然后进行运算(重点)

强制转换 (类型)变量名 高–低
自动转换 低—高

int i1 = 128;
byte b = (byte)i1;//内存溢出

System.out.println(i1);
System.out.println(b);


int i2 = 128;
double d = i2;
System.out.println(i2);
System.out.println(d);

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

取整数部分,不会四舍五入

System.out.println((int)23.7);
System.out.println((int)-45.89f);

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

//操作比较大的数的时候,注意溢出的问题
//jdk7新特性,数字之间可以用下划线
int money = 10_0000_0000;
int years = 20;
int total = money*years;//-1474836480,数据溢出
long total2 = money*years;
System.out.println(total);
System.out.println(total2);//-1474836480,因为计算的时候默认是int,转换之前已经存在问题了。

long total3 = ((long) money*years);
long total4 = money*((long)years);
System.out.println(total3);
System.out.println(total4);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yEcIxyov-1600875408192)(C:\Users\25343\AppData\Roaming\Typora\typora-user-images\image-20200922101942576.png)]

变量

java是一种强类语言,每一个变量都必须声明其类型

java变量是程序中最基本的储存单元,包括变量名,变量类型,作用域。

数据类型 变量名 = 值;

int a,b,c;不建议怎么定义变量

注意事项:

  1. 每一个变量都有类型,类型可以是基本数据类型,也可以引用类型

  2. 变量名必须是合法的标识符。

  3. 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。

变量作用域

类变量:(静态变量) 类中独立于方法之外的变量

实例变量:方法的外面,类的里面。如果不初始化,这个类型的是默认值 0或者0.0,布尔值是false,除了基本类型,其他的默认值都是null。(是在类声明的内部但是在类的其他成员方法之外声明的)

局部变量:必须声明和初始值

public class Variable{
	static int allClick = 0;//类变量(静态变量)
    String str = "hello world";//实例变量
    
    public void method(){
        int i = 0;//局部变量,必须声明和初始值**
    }
}

static:静态的

static{}静态代码块

**常量:**常量是一种特殊的变量,它被设定后,在程序过程中不允许被改变。

关键字:final 常量名 = 值;

常量名一般使用大写

(重点)修饰符,不存在先后顺序

static final double PI1 = 3.14;
final static double PI2 =3.14;

变量的命名规范

所有变量、方法、类名:见名其意

类成员变量、局部变量、方法名:首字母小写和驼峰原则(除了第一个单词以外,后面的单词首字母大写)lastName、runRun。

常量:大写字母和下划线:Man_VALUE

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

运算符

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R16OoKLz-1600875408194)(C:\Users\25343\AppData\Roaming\Typora\typora-user-images\image-20200922150530461.png)]

整数类型相加是时候有long类型,结果类型会是long类型,没有long类型的,无论有不有int类型,结果类型都为int类型。

有double类型时结果类型为double类型。

a++:先赋值,后自增

++a:先自增,后赋值

a–:先赋值,后自减

–a:先自减,后赋值

//幂运算

Math使用数学工具类

double pow = Math.pow(3, 2);//3^2=3*3=9.0
   System.out.println(pow);

短路运算

如果前面的的运算已经为flase了,后面的运算不执行了

//短路运算
int c =5;
boolean b2 = (c<4) && (c++<4);
System.out.println(b2);
System.out.println(c);

位运算

A = 0011 1100
B = 0000 1101

A&B(与) = 0000 1100 两个数都为1结果为1,否则为0
A|B(或) = 0011 1101 两个数都为0价格为0,否则为1
A^B(异惑运算) = 0011 0001 如果两个位置相同为0,否则为1
~B(取反) = 1111 0010 B数完全取反

A = 0011 1100
B = 0000 1101

  A&B() = 0000 1100  两个数都为1结果为1,否则为0
  A|B() = 0011 1101  两个数都为0价格为0,否则为1
  A^B(异惑运算) = 0011 0001   如果两个位置相同为0,否则为1
  ~B(取反)  = 1111 0010    B数完全取反

重点知识

*运算效率极高的
<< 左移 相当于"数字"2

<< 右移 相当于"数字"/2

2*8 = 16 2*2*2*2   (2<<3)
运算效率极高的
<<  左移  相当于"数字"*2
 >>  右移  相当于"数字"/2
 0000 0000  0
   0000 0001  1
   0000 0010  2
 0000 0011  3
    0000 0100  4
 0000 0101  5
 0000 0110  6
 0000 0111  7
    0000 1000  8
 0000 1001  9
 0000 1010  10
 0000 1011  11
 0000 1100  12
 0000 1101  13
 0000 1110  14
 0000 1111  15
    0001 0000  16

 */

**字符串连接符 + **

字符串连接符 + ,String,+ 运算两边有一方到String类型,另外一边的操作转换String连接。

int a = 10;
int b = 20;
    //字符串连接符   +  ,String,+  运算两边有一方到String类型,另外一边的操作转换String连接。

    System.out.println(""+a+b);//String在前面,后面进行拼接
    System.out.println(a+b+"");//String在后面,前面依旧进行运算
    System.out.println(a+b+""+b+a);//只要不是最末尾,String后面会拼接。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8480Ok61-1600875408195)(C:\Users\25343\AppData\Roaming\Typora\typora-user-images\image-20200922175845293.png)]

三元运算符

//三元运算符
public  static void main(String[] args){
    //x ? y :z
    int bcs = 100;
    String type = bcs<90 ? "不及格" : "及格";
    //努力学习做强大的人 ?人生巅峰 : 工地搬砖
}

包机制

一般使用公司域名倒置作为包名:www.baidu.com com.abidu.www

com.bac.包名

为了能够使用某一个包的成员,我们需要在java程序中明确导入该包,使用import语句可完成此功能

*是通配符,导入所有的包

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Snb9R4W-1600875408196)(C:\Users\25343\AppData\Roaming\Typora\typora-user-images\image-20200922182611001.png)]

JavaDoc

javaDoc命令是用来生成自己API文档的

参数信息

@author作者名

@version版本号

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

@param参数名

@return返回值情况

@throws异常抛出情况

生成API文档

  1. 进入java文件目录
  2. javadoc -encoding UTF-8 -charset UTF-8 文件名(encoding是java代码编码,-charset是对生成文档所用的编码)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oImZMkb3-1600875408198)(C:\Users\25343\AppData\Roaming\Typora\typora-user-images\image-20200922184632294.png)]

IDEA生成javadoc文档

在这里插入图片描述

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值