【JAVA】注释 关键字 标识符 数据类型 大数 常量与变量

Java第一天

注释

代码的注释是程序代码可维护性的重要环节之一,所以我们要注意代码注释的规范。

原则

在整个程序当中,我们的注释要有统一的结构和标点来构造注释。注释的内容要准确简洁,错误的注释会起到反作用。

注释格式

单行注释

它是使用双斜线(//)标注的,注释的内容放在“//”的后面。
【语法】
//我是注释

多行注释

多行注释的作用是注释连续的多行内容。它把注释的内容放在“/”开始,“/”结束的区域内。
【语法】
/*
这是多行注释1
这是多行注释2
*/

文档注释
文档注释以“/**”开始,“*/”结束,中间的内容全部都是文档注释。
【语法】
/**
文档注释
*/

Javadoc注释

@author 对类的说明 标明开发该类模块的作者

@version 对类的说明 标明该类模块的版本

@see 对类、属性、方法的说明 参考转向,也就是相关主题

@param 对方法的说明 对方法中某参数的说明

@return 对方法的说明 对方法返回值的说明

@exception 对方法的说明 对方法可能抛出的异常进行说明

关键字

这一部分其实没什么好多说的,关键字随着学习的深入会慢慢掌握大部分的关键字,这里就大致的描述一下。

什么是关键词

在所有程序中有特殊意义的文字标记,不可以把它当做标识符来使用。

大致含义

在这里插入图片描述

标识符

什么是标识符?

凡是可以由自己命名的地方都称为标识符。
  例如,对于常量、变量、函数、语句块、类、项目等都需要一个名字,这些我们都统统称为标识符。

标识符要求

  1. 标识符可以由字母、数字、下划线(_)和美元符号($)组成
  2. 标识符不能以数字开头,不能是java中的关键字。

标识符规范(驼峰命名法)

  1. 包名所有字母必须小写。例如:cn.itcast.test
  2. 类名和接口名每个单词的首字母都要大写。例如:ArrayList
  3. 常量名所有的字母都大写,单词之间用下划线连接。例如:DAY_OF_MONTH
  4. 变量名和方法名的第一个单词首字母小写,从第二个单词开始,每个单词首字母大写。例如:lineName、getLingNumber
  5. 在程序中,应该尽量使用有意义的英文单词来定义标识符,使得程序便于阅读。例如:使用userName表示用户名,password表示密码。

ngNumber
5. 在程序中,应该尽量使用有意义的英文单词来定义标识符,使得程序便于阅读。例如:使用userName表示用户名,password表示密码。

数据类型

浮点数拓展

最好避免使用浮点数进行比较,浮点数他是离散的,接近但不等于。

在进行比较的时候可以使用大数类

  1. BIgInteger 实现任意整精度的整数

  2. BigDecimal 实现任意精度的浮点数

大数

BigInteger

使用静态的valueof方法可以将普通的数值转换为大数:

BigInteger a=BigInteger.valueof(10086);

对于更大的数,可以使用一个带字符串参数的构造器:

BigInteger reallyBig=new 
 BigInteger("23234235436546437652435234235632")

遗憾的是我们不能使用熟悉的运算符号处理大数,而是需要使用大数类中的(加减乘除)add subtract multiply divide 方法。

public class BigIntegerDemo1 {
 
	public static void main(String[] args) {
		BigInteger bi1 = new BigInteger("123456789") ;	
		BigInteger bi2 = new BigInteger("987654321") ;	
		System.out.println("加法操作:" + bi2.add(bi1)) ;	// 加法操作
		System.out.println("减法操作:" + bi2.subtract(bi1)) ;	// 减法操作
		System.out.println("乘法操作:" + bi2.multiply(bi1)) ;	// 乘法操作
		System.out.println("除法操作:" + bi2.divide(bi1)) ;	// 除法操作
		System.out.println("最大数:" + bi2.max(bi1)) ;	 // 求出最大数
		System.out.println("最小数:" + bi2.min(bi1)) ;	 // 求出最小数
		BigInteger result[] = bi2.divideAndRemainder(bi1) ;	// 求出余数的除法操作
		System.out.println("商是:" + result[0] + 
			";余数是:" + result[1]) ;
		System.out.println(bi1.compareTo(bi2)) ;// 比较操作,相等时输出0,否则为1
		
	}
}

BIgDecimal

使用此类可以完成大的小数操作,而且也可以使用此类进行精确的四舍五入

加减乘除的方法都是一样的,唯一有个区别就是

BigDecimal divide(BigDecimal other ,RoundingMode mode);
//如果商是个无限循环小数,第一个divide方法会抛出一个异常。要得到一个四舍五入的结果,就要使用这个方法。RoundingMOde.HALF_UP是四舍五入的一个方法。

java.math.RoundingMode:这是一种枚举类型,它定义了8种数据的舍入模式。更多详细的舍入方式可以参考这篇博客: https://blog.csdn.net/bailu666666/article/details/79829902

类型转换

  • 由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。

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

  • 强制转换 高–低

    int i=128;
    byte b=byte(i);//强制转换  这里会内存溢出,byte最大的是127 现在b变成了-128
    
  • 自动转换 低–高

在这里插入图片描述

    /*
    注意点:
    1. 不能对布尔值进行转换
    2. 不能把对象类型转换为不相干的类型
    3. 在把高容量转换到低容量的时候,强制转换
    4. 转换的时候可能存在内存溢出,或者精度问题!
    */
  • 其他注意点

当byte,short,char 发生运算时,会自动转换成 int 类型

public class Demo06 {
    public static void main(String[] args) {
        // 操作比较大的数的时候,注意溢出问题
        // JDK7新特性,数字之间可以用下划线分割
        int money = 10_0000_0000;
        int years = 20;
        int total = money*years; // -1474836480,计算的时候溢出了
        long total2 = money*years; // 默认是int,转换之前已经存在问题了?

        long total3 = money*((long)years);// 先把一个数转换为long
        System.out.println(total3);



    }
}

变量与常量

变量

在java中,变量声明尽可能靠近变量第一次使用的地方,一行声明一个变量,保持良好的编程风格。

  • 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
  • 变量名必须是合法的标识符。
public class Demo01 {
    // 属性:变量
    // 类变量 static 从属于类,一起出现,一起消失
    static double salary = 2500;
    // 实例变量: 从属于对象;如果不自行初始化,这个类型的默认类型 0  0.0
    // 布尔值:默认是false
    //除了基本类型,其余的默认值都是null
    String name="热爱10005度的你";
    int age=0;
    
    // 作用域非常高
    static{

    }

    public static void main(String[] args) {
        // 局部变量:必须声明和初始化值
        int i = 10;

        System.out.println(i);

        // 变量类型 变量名字 = new Demo08();
        Demo08 demo08 = new Demo08();

        System.out.println(demo08.name);
        System.out.println(demo08.name);

        System.out.println(salary);
        //类变量可以直接输出
    }
}

常量

final 常量名 = 值;
final double PI = 3.14;
//常量名一般使用大写字符。

变量与常量命名时要遵守驼峰命名规则;

作用域

类变量
  1. 在本类中可以直接使用,在其他类中可直接通过类名调用(ClassName.VariableName)
  2. 类变量通常是一个常量,为了方便调用,一般在类变量前面添加public和final关键字,声明为公开的常量
  3. 类变量在第一次被访问时创建,在程序结束时销毁
实例变量
  1. 实例变量在对象创建的时候创建,在对象被销毁的时候销毁
  2. 实例变量可以通过变量名访问(就是new出来的对象的变量名)
  3. 一般实例变量都会构建为private私有的,然后类中提供对应的getter和setter方法来进行访问和赋值
局部变量
  1. 仅在声明它的方法或者代码块中有效
  2. 当包含局部变量的方法或者代码块执行时,变量创建,结束时销毁
  3. 局部变量没有默认值,所以局部变量在被声明后,必须初始化才能使用
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值