变量:存储数据的空间(装数据的容器)
变量命名:
1)由字母、数字、下划线_、美元符号$组成
2)不能使用数字开头,不建议使用美元符号开头
3)采用小驼峰命名法(多个单词,从第二个单词开始,每个单词的首字母大写)
4)见名知意
5)不能使用Java关键字
6)Java严格区分大小写
数据类型:
基本数据类型(8个)
数值类型
整数类型
byte、short、int、long
浮点数类型
float、double
非数值类型
字符类型char
布尔类型boolean true false
引用数据类型(3个)
数组、类、接口
变量的声明、赋值、操作数据:
变量声明:
数据类型 变量名;
变量赋值:
变量名= 数据;
操作数据:
操作变量名实际操作的是变量中的数据
变量声明和赋值合并写
数据类型 变量名= 数据;
String类型的数据,使用双引号括起来的数据,可以通过连接符+连接输出
Scanner类的使用:
第一步:导包 import java.util.Scanner;
第二步:创建Scanner类对象
Scanner sc = new Scanner(System.in);
第三步:获取数据
获取String类型数据:sc.next();
获取int类型数据:sc.nextInt();
获取double类型数据:sc.nextDouble();
package cn.bdqn.demo01;
public class Demo01 {
public static void main(String[] args) {
//自动类型转换:小范围的数据存储到大范围的变量中
byte num1 = 100;
int num2 =num1;
System.out.println(num2);//100
//强制类型转换:大范围的数据存储到小范围的变量中。注意:有可能存储的了。也有可能大范围的数据超过了小范围数据的范围,这个时候数据就会出现精度丢失
int num3 =129;
byte num4 =(byte)num3;
System.out.println(num4);//120
}
}
package cn.bdqn.demo01;
public class Demo02 {
public static void main(String[] args) {
double firstAvg = 81.29; // 第一次平均分
double secondAvg; // 第二次平均分
int rise = 2;
secondAvg = firstAvg + rise;
System.out.println("第二次平均分是:" + secondAvg);
}
}
package cn.bdqn.demo01;
public class Demo03 {
public static void main(String[] args) {
int before = 20; // apple笔记本市场份额
double rise = 9.8; // 增长的份额
int now = (int)(before + rise); // 现在的份额
System.out.println("现在的份额:"+now);//29 会丢失数据精度
}
}