Java教程

Java中的常量和变量------------------小白不白有点黑

本文主要是介绍Java中的常量和变量------------------小白不白有点黑,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一.Java中常量的含义:在程序执行过程中不发生改变的量称为常量。

二.常量的分类

字面值常量自定义常量
字符串常量(使用双引号包裹起来的内                           容:称为"字符串常量"
                        举例: "HelloWorld")
关键字
字符常量(使用单引号包裹起来的内容
                  例:'a','A','0', '我', 'abc'                      非法数据(只能单引号括起                         来的单个内容)
final
整数常量(100 , 包含"进制"    整数----                    默认十进制)状态修饰符
小数常量(3.14,12.56)
布尔常量(true,false)
空常量(null)

三.Java中变量的含义:在程序执行过程中,其值发生改变的量。

四.变量的三要素:
        数据类型
        变量名称
        初始化值

五.数据类型 :在Java中,数据类型分为两大类型:
基本数据类型:

整数类型:byte     (字节型)——占1个字节

                short        (短整型)——占2个字节

                int             (默认整数类型)——占4个字节

                long          (长整型)——占8个字节

浮点类型:float      (单精度浮点)——占4个字节

                double       (双精度浮点)——占8个字节

字符类型:char        (单引号括起来的内容)——占2个字节

布尔类型:boolean  (不会参与类型转换:仅仅表示真,假)——占1个字节

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

**************************************************************************************************************

注意:字符串 + 任何数据 ="新的字符串"

六.定义变量的注意事项:
    (1)在java语言(强类型语言:语法结构很严谨)中,同一个变量不能重复定义
         (javascript语言:弱类型语言:可以去重复定义变量)
    (2)一行就写一个变量,  一行结束之后分号;(代码规范风格)
    (3)一行也可以定义多个变量(在面试题/笔试题中)
    (4)变量要么直接初始化,要么先定义,但是必须在使用之前对其进行初始化

_____________________________________________________________________________七.变量要进行运算,必须保证数据类型一致
  

  byte b = 3 ;
    int  a = 4 ;

a和b进行求和?
boolean类型不参与类型转换
在Java中有一个隐式类型转换:byte,short,char三者之间不进行相互转换,但是参与运算,优先转换为int类型(考点),long,float----double类型 

class YinShiZhuanHuan{
	public static void main(String[] args){
		
		//定义了两个变量
		int a  = 4 ;
		byte b = 3 ;
		
		//定义变量c接受结果
		int c = a + b ;			//先将b--->提升为int  类型的3
		System.out.println("c:"+c) ;
	}
	
	
}

**************************************************************************************************************八.Java中的显示转换(强制类型转换:强转),不仅适用于基本类型,以后引用数据类型也会使用
    格式:目标数据类型  变量名  = (目标数据类型)(初始化/表达式) ;
                强转类型转换在应用场景:
                没有明确要求,尽量不用,因为可能损失精度 

例如:byte b = 3 ;
           int  a = 4 ; a和b进行求和?  考虑结果类型?  byte

                   

byte c = a +b ;  

                    

class QiangZhuan{
	
	public static void main(String[] args){
		
		//定义两个变量
		int a = 4 ;
		byte b = 3 ;
		
		//定义接受的结果类型
		//byte result = a  + b  ;  // b--> byte,----先提升int参与运算
					//结果为int类型的7	:4个字节
					//接受的类型:byte类型:占1个字节
					
		//目标数据类型  变量名  = (目标数据类型)(初始化/表达式) ;
		byte result = (byte)(a+b) ; 
		System.out.println("result:"+result) ; //byte类型的7
		
	}
}

--------------------------------------------------------------------------------------------------------------------------------j九.面试题

考点:
    (1)java的隐式类型转换以及强转格式
    (2)常量相加和变量相加的区别

定义三个变量

byte b ,b1 = 3 , b2 = 4 ;
	1)b = b1 + b2 ;
	2)b = 3 + 4 ;

当前1),2)哪一句编译失败?哪一句可以成功编译!失败的原因是什么?如何解决                                                       
    答:

(1)第一句话会编译失败:原因就是存在隐式类型提升
            b1和b2 (变量相加,需要考虑类型提升,然后再参与运算)先分别提升int
            b1+b2的结果是int类型的7
            b :byte类型 :必须强转类型转换
    2)不会有问题:
            b = 3 + 4 ;常量相加,先相加,然后看其结果为7,看是否在当前类型范围内   
            byte类型的取值范围:-128~127,在范围内,所以不会有问题。
 

这篇关于Java中的常量和变量------------------小白不白有点黑的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!