Java变量与数据类型

Java变量与数据类型

一、编程规范

  • 任何地方的名字都需要见名知意;
  • 代码适当缩进;
  • 书写过程成对编程;
  • 对代码进行合理注释;

注:

  • 一旦修改的源代码之后要重新编译
  • 一个java文件中可以存在多个类,但是只有一个类能被public修饰,并且要与文件名保持一致
  • 一个类中只能有一个主方法
  • java是以类为单位的,每个类都有对应的字节码文件,字节码文件跨平台,与平台无关性

二、关于注释

1)注释的三种形式
  • 单行注释//
    • 作用域:只在当前行有效
    • 嵌套:可以嵌套单行注释,不能嵌套多行和文档
    • 位置:这一行的上面或者行尾
  • 多行注释/*注释的内容*/
    • 作用域:多行
    • 嵌套:可以嵌套单行注释,不能嵌套多行和文档
    • 位置:类的上面或者方法的上面
  • 文档注释/** 文档注释*/
    • 作用域:多行
    • 嵌套:可以嵌套单行注释,不能嵌套多行和文档
    • 位置:类的上面或者方法的上面
/*
多行注释
*/
public class Demo01{
	//主方法
	/**文档注释*/
	public static void main(String[] args){ //方法体
		System.out.println("");
	}	
}
2)注释的作用
  • 解释说明程序,提高了代码的阅读性
  • 可以帮助我们调试程序

三、标识符

1)定义

就是给类,接口,方法,变量等起名字的字符序列

2)组成原则

由数字,字母,下划线_,美元符号$任意组合而成

3)注意事项
  • 不能以数字开头
  • java严格区分大小写
  • 关键字不能作为标识符使用

关键字: java中有一些词,有自己的用法或者用途

eJheot.png

保留字: java中有一些词,将来有可能有自己的用法或者用途   如:const、goto

4)标识符的命名规范

(1)见名知意

(2)驼峰命名原则

  • (3)包:全部小写
  • 单级包:单个文件夹 shangxuetang
  • 多级包:多个文件夹嵌套 shang.xue.tang

(4)类|接口:每个单词的首字母大写 ShangXueTang

(5)方法|变量:第一个单词全部小写,从第二个单词开始每个单词的首字母大写 shangXueTang

(6)常量:全部大写 SHANG_XUE_TANG

四、变量

1)定义

在程序运行过程中,其值可以发生改变的量。

2)变量的使用

(1)声明的同时赋值

    数据类型 变量名 = 变量值;

(2)先声明后赋值

    数据类型 变量名; --声明

    变量名 = 变量值; --赋值

(3)同时声明多个变量

注意:等号是唯一一个自由向左运算的符号

3)使用变量注意项

(1)变量必须已声明

(2)并且已经赋值

(3)从变量的声明开始,到包括它的最近的"}"结束为止

4)变量的分类

(1)局部变量:方法,语句块{}声明的变量,局部变量使用前必须声明并且赋值

(2)成员变量:类中方法外,不赋值有默认值

public class Variable04{
	//成员变量
	String de="hello";
	
	public static void main(String[] args){
		//System.out.println(name);
		//存储一个学生的年龄  18->int
		int age=18;
		//存储学生的姓名 "因为" -->字符串
		String name="张强";
		
		System.out.println(name);
		System.out.println(age+1);
		
		//薪资
		double money; 
		money=100.1;
		System.out.println(money);
		
		int x,y,z;
		x=y=z=10;
		System.out.println(x);
		System.out.println(y);
		System.out.println(z);
		
		int haha=3;
		System.out.println(haha);
	}	
	public static void test(){
		//String name="a";
		//System.out.println(name);
	}	
}

五、常量

1)定义

在程序执行过程中,其值不可发生改变的量

2)字面值常量:
  • 整数常量: 123 1 -5
  • 小数常量: 123.123
  • 字符常量: '1' 'a' '号'
  • 字符串量: "123" "abc"
  • 布尔常量: false true
  • 空常量 : null
3)自定义常量:

    被final修饰的变量为常量

public class Constant05{
	
	public static void main(String[] args){
		final double PI=3.1415926;
		//pi=0;
		System.out.println(PI);
	}	
}

六、数据类型

1)分类

A:基本数据类型:4类8种

B:引用数据类型:类,接口,数组。

2)基本数据类型:
eJhVeA.png

注:整型的字面常量值默认int类型, 如果想要存储比int类型更大的long类型的数据,需要在数据的后面添加L/l,推荐使用L

eJhALd.png eJhksH.png

注意:浮点型运行结果可能发生不精确.单精度的浮点数要加F或者f

eJhFQe.png

字符型参与运算,会先转为对应的十进制的数再去参与运算

eJhZdI.png

七、数据类型转换

1)boolean类型不参与转换
2)自动类型转换

小范围类型的数据到大范围类型会发生自动类型提升

public class AutoChange{
        public static void main(String[] args){
            char c1='a';//定义一个char类型
            int i1 = c1;//char自动类型转换为int
            System.out.println("char自动类型转换为int后的值等于"+i1);
            char c2 = 'A';//定义一个char类型
            int i2 = c2+1;//char 类型和 int 类型计算
            System.out.println("char类型和int计算后的值等于"+i2);
        }
}

运行结果

eJhnFP.png
3)强制类型转换

(1)大范围类型的数据赋值给小范围类型的变量,需要发生强制类型转换,有可能损失精度

(2)小范围类型 变量名=(小范围类型)大范围类型数据;

注:

如果多个类型的数据参与运算,最终结果会提升成为参与运算的数据的最大类型

如果比int小的char,byte,short参与运算时,会自动类型提升为int类型

如果给short,byte,char赋值,只要在其范围内的常量就能成功赋值

public class ForceChange{
    public static void main(String[] args){
        int i1 = 123;
        byte b = (byte)i1;//强制类型转换为byte
        System.out.println("int强制类型转换为byte后的值等于"+b);
    }
}

运行结果

eJhuJf.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值