Java 基础(变量)

Java 变量

变量的概念

  • 内存中的一个存储区域
  • 该区域的数据可以在同一类型范围内不断变化
  • 变量是程序中最基本的存储单元。包含变量类型,变量名和存储的值

变量的作用

  • 用于在内存中保存数据

使用变量注意的地方

  • Java 中每个变量必须先声明,后使用
  • 使用变量名来访问这块区域的数据
  • 变量的作用域:其定义所在的一对{}内
  • 变量只有在其作用域内才有效
  • 同一个作用域内,不能定义重名的变量
class IdentifierTest{
	public static void main(String[] args){
		// 变量的定义
		int myNumber = 1001;
		// 变量的使用
		System.out.println(myNumber);
		
		// 变量的声明
		int my2Number;
		// 变量的赋值
		my2Number = 1002;
		
		System.out.println(my2Number);
	}
}

Java 变量的分类

基本数据类型:

整型: byte, short, int, long
浮点型: float, double
字符型: char
布尔型: boolean

引用数据类型:

类(class)
接口(interface)
数组(array)

整型: byte, short, int, long

  • java 的整型常量默认为 int 型,声明 long 型常量须后加 'l' 或 'L'
  • java 程序中变量统筹声明为 int 型,除非不足以表示较大的数,才使用 long
类型 占用存储空间 表数范围
byte 1字节=8bit位 -128~127
short 2字节 -2^15 ~ 2^15-1
int 4字节 -2^31 ~ 2^31-1(约21亿)
long 8字节 -2^63 ~ 2^63-1
class VariableTest {
	public static void main(String[] args){
		byte b1 = 12;
		byte b2 = -128;
		System.out.println(b1);
		System.out.println(b2);
		
		short s1 = 128;
		int i1 = 1234;
		long l1 = 1234567L;
		System.out.println(s1);
		System.out.println(i1);
		System.out.println(l1);
	}
}

浮点型: float, double

浮点型常量有两种表示方式:

  • 十进制数形式: 如: 5.12, 512.0f, .512 (必须有小数点)
  • 科学计数法形式:如:5.12e2, 512E2, 100E-2
  • fload: 单精度,尾数可以精确到7位有效数字。很多情况下,精度很难满足需求。
  • double: 双精度, 精度是 float 的两倍。通常采用此类型。
  • Java 的浮点型常量默认为 double 型,声明fload型常量,须后加 'f' 或'F'
类型 占用存储空间 表数范围
单精度 float 4字节 -3.403E38~3.403E38
双精度 double 8字节 -1.798E308~1.798E308
class VariableTest {
	public static void main(String[] args){
		// 浮点型:float(4字节), double (8字节)
		// 浮点型,表示带小数点的数值
		// float 表示数值的范围比 long 还大
		double d1 = 123.3;
		System.out.println(d1 + 1);
		
                // 定义 float 类型时,需要以 "f" 或 "F" 结尾
                float f1 = 12.3F;
		System.out.println(f1);
                // 通常定义浮点型变量时,使用 double 型

	}
}

浮点型:

  • char 型数据用来表示通常意义上"字符"(2字节)
  • Java 中所有字符都使用 Unicode 编码,故一个字符可以存储一个字母,一个汉字或其他书面语的一个字符
  • char 类型是可以进行运算的。如: u000a 表示
class VariableTest {
	public static void main(String[] args){

                // 字符型: char(1个字符=2个字节)
                // 定义 char 型变量,通常使用一对 ''
                char c1 = 'a';
		char c2 = '中';
		System.out.println(c1);
		System.out.println(c2);

                // 声明一个转义字符
                char c3 = '
';
		System.out.print("Hello" + c3);
		System.out.println("World");

                char c4 = 'u0043';
		System.out.println(c4);

	}
}

布尔型: boolean

boolean 型只能取两个值之一: true, false
常常在条件判断,循环结构中使用

class VariableTest {
	public static void main(String[] args){
                boolean bb1 = true;
		System.out.println(bb1);

                boolean isMarried = true;
		if(isMarried){
			System.out.println("Good");
		} else {
			System.out.println("Not bad");
		}
	}
}

字符串类型:String

  • String 不是基本数据类型,属于引用数据类型, 翻译为:字符串
  • 使用方式与基本数据类型一致。例如: String str="abcd"
  • 声明 String 类型变量时,使用一对 ""
  • 一个字符串可以串接另外一个字符串,也可以直接串接其他类型的数据。
  • String 可以和8种基本数据类型变量做运算,且运算只能是连接运算:+
  • 运算的结果仍然是 String 类型
class VariableTest4 {
	public static void main(String[] args) {
		String s1 = "Hello World!";
		
		System.out.println(s1);   // Hello World!
	}
	
}
class StringTest{
	public static void main(String[] args){
		char c = 'a';
		int num = 10;
		String str = "hello";
		System.out.println(c + num + str);      //107hello
		System.out.println(c + str + num);      //ahello10
		System.out.println(c + (num + str));    //a10hello
		System.out.println(str + num + c);      //hello10a
		
		System.out.println("*    *");           //*    *   
		System.out.println('*' + '	' + '*');   //93
		System.out.println('*' + "	" + '*');   //*    *
		System.out.println('*' + '	' + "*");   //51*
		System.out.println('*' + ('	' + "*")); //*    *
	}
}
原文地址:https://www.cnblogs.com/klvchen/p/14149253.html