Java 入门基础02(QAQ)

Java 基础-02


1.变量

所谓变量,就是可以进行变化的量。
Java是一种强类型语言,每个变量都必须声明其类型。
Java变量是程序中最基本的存储单元,其要素包括:变量名,变量类型和作用

1.1为什么使用变量

  • 我们用来保存,一些会根据时间的推移,数据值会产生变化的东西,因为他发生变化,所以我们用一个变量来标识他,通俗的理解是,变量,一个进行变化的量值,它的名称不变,值在变

1.2数据类型

  • java数据分为两大数据类型 1.基本数据类型 2.引用数据类型
  • 基本数据类型分为8种:
    • byte 字节型
    • short 短整型
    • int 整数型
    • long 长整型
    • boolean 布尔型
    • char 字符型
    • float 单精度浮点数
    • double 双精度浮点数
  • 1.浮点数在机器中存放形式的简单形式(符尾位 + 指数位 + 尾数位)
    2.尾数部位可能丢失,造成精度损失(小数都是近似数)

  • 引用数据类型分为:

    • String 字符串,保存一串字符,可以是任何符号,数字,字母或中午,要使用双引号标记(“(内容)”)
    • 类(class)
    • 接口(…)
    • 数组([])

    2.声明变量

    1.声明变量:通知计算机,要在内存中开辟指定类型的数据空间,即在内存中为数据事情一个大小合适的“房间”,并为其取一个别名

    //先声明后赋值(初始化)
    //无法格式:
    // 数据类型 变量名;
    // 变量名 = 数值;
    // 例如:
    	String name;
    	name = "666";
    	int num;
    	num = 123;
    
    
     //声明变量的同时赋值(初始化)
     //语法格式:
     // 	数据类型 变量名 = 数值;
     //		例如:
        String name = "lin"; 		// 名字
    	int num = 18// 年龄
    	double money = 1000.01		// 存款
     	boolean true = false// 真假,true是真,false是假
     
    
    
     //变量的使用:
     //  变量进行第二次变量
    	String name1 = name;						 // 把 lin 的值赋值给 name1
     // 变量相加 1
    	int newNum = 1+ name;						 // 给 lin 的年龄增加1岁
     // 变量相加 2
    	int  newNum2 = newName + name; 				 // 把name + newName保存到newNum2变量中 
     // 在输出语句种使用
    	System.out.println(newName); 			    // 输出年龄	
    	System.out.println("lin的年龄:"+ newNum2); //加上提示语,输出年龄
    
    

3.命名的规范

当一个变量名由一个或多个单词连接组成时,变量名应遵守“骆驼命名法”,即第一个单词的首字母小写,其后单词首字母大写,如myFirstName,myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,因此这种命名方式被称为“骆驼命名法”(也被称为“驼峰命名法”)。

  • 变量名不可以用符号和数字开头,可以用“_”和“$”符号
  • 变量名不能使用Java本身定义的关键字,如int,public,class等
  • 变量名需要区分大小写

4.变量常见错误

  • 变量在使用前没有被初始化
    • Java中的局部变量在使用前必须被初始化,否则编译的时候无法通过。
 //示例
	     public class HelloWord{
			public static void main(String[] args){
				String name;
				System.out.println(name);	//编译错误:变量在使用前没有被赋值,应加上 name = "名字"; 或 一步过 String name = "名字"   
			}
	 }

5.常量

常量一般用来声明一些固定的值,如一天有24小时,一分有64秒等。

  • 常量的定义:

    • 经常使用,且固定不变的值,我们使用常量来声明,如:一年的月份 是12个月
  • 特点:

    • 常量使用时必须在声明的时候就初始化值
    • 常量的值,不允许再进行更改
  • 语法:

    • final 数据类型 常量名
    • final int day = 24;

    6.运算符

    算术运算符主要用于进行数学运算
    关系运算符用于进行数据的大小比较,返回的结果是boolean类型数据(只有true和false两种取值,true为真,false为假)
    注意:关系运算符“==”和赋值运算符“=” 前者是比较符号,比较左右两边的数据是否相等,而后者是把符号“=”右边的数据赋值于左边的变量。

    int num = 10; 	// 表示将右侧的数值 10 赋值给左边的变量
       num == 10; 	// 表示判断变量num的值是否为 10 ,如果成立则表达式值为真;否则为假
    
  • 算术运算符

    • 加法运算符 +  5 + 5 等于 10
    • 减法运算符 -   10 - 5 等于 5
    • 乘法运算符 *   2 * 5 等于 10
    • 除法运算符 /   10 / 2 等于 5
    • 求余运算符 % 11 % 5 等于 1
    • 自加运算符 ++ int num = 10; num++;即 num = num + 1
    • 自减运算符 –   int num = 10; num--;即 num = num - 1

  • 关系运算符

    • 大于 >  a > b 成立,则为真,反之假
    • 小于 <  a < b 成立,则为真,反之假
    • 大于等于 >=  a >= b 成立,则为真,反之假
    • 小于等于 <=  a <= b 成立,则为真,反之假
    • 等于 ==    a == b 成立,则为真,反之假
    • 不等于 !=  a != b 成立,则为真,反之假

    7.控制台的输入

    用于接收控制台输入的内容
    使用步骤如下:

// 1. 创建一个人Scanner 控制台扫描器
Scanner input = new Scanner(System.in);
// 2. 打印一个提示语句
System.out.println("请输入名字")// 3. 获取控制台输入的内容
// 3.1 input.nextInt()  -- 代表或取到的内容是String类型的数据值
String name = input.next();  

System.out.println("请输入年龄:");
// 3. 2 input.nextInt()  -- 代表或取到的内容是Int类型的数据值
int num = input.nextInt();

System.out.println("请输入存款:");
// 3. 3 input.nextDouble()  -- 代表或取到的内容是double类型的数据值
int num = input.nextDouble();


8.数据类型转换

介绍 自动类型转换
当java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个就是自动转换类型。
数据类型按精度(容量)大小排序为:
char–>int–>long–>folat–>double
byte–>short–>int–>long–>folat–>double

  • 自动类型转换注意和细节 :
    • 细节 1:
      有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后在进行计算
    • 细节 2:
      当我们把精度(容量)大的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换
    • 细节 3:
      (byte,short) 和 char 之间不会相互自动转换,当把具体数赋值给byte时,(1)先判断该数是否在byte范围内,如果是就可以
    • 细节 4:
      byte,short,char 他们三者可以计算,在计算时首先转换为int类型
    • 细节 5:
      boolean 不参与类型的自动转换
    • 细节 6:
      自动提升原则:表达式结果的类型自动提升微 操作数中最大的类型

介绍 强制转换
自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型.使用时要加上强制转换符(),但可能造成精度降低或溢出,格外要注意.

:
int n1 = (int)1.9;
System.out.println(n1); // 输出 1 ,造成精度损失int n2 = 2000;
byte b1 = (byte)n2;
System.out.println(b1); // 输出 -48 ,造成数据溢出
  • 自动类型转换注意和细节 :
    • 细节 1:
      当进行数据的大小从 大 --> 小,就需要使用强制转换.
    • 细节 2:
      强转符号() 只针对于最近的操作性有效,往往会使用小括号提升优先级.
      错误示范 :
      int x = (int)10*3.5 + 6*1.5; //编译失败 : double -> int 会有损失
      正确示范 :
      int x = (int)(10*3.5 + 6*1.5); //(int)44.0 -> 44 输出结果 : 44
    • 细节 3:
      byte,short 和 char 类型在进行运算时,当做 int 类型处理。
    • 细节 4:
      char类型可以保存int的常量值,但不能保存int的变量值,需要强转
示范:
char c1 = 100; 		// 正确
int  m  = 100;   	// 正确
char c2 = m;   		// 错误
char c3 = (char)m; 	// 正确
System.out.println(c3); // 输出100对应的字符“D”

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值