四、变量和数据类型
1.变量
值可以变化的量,称为变量,用来存储程序运行时的数据
变量的三要素:变量名、变量类型、变量值
变量的命名规范:
-
只能数字、字母、下划线_、美元符号$组成,但不能以数字开头
-
建议使用英文单词
-
通常采用第一个单词首字母小写,其他单词首字母大写的形式(骆驼式命名法/驼峰式命名法)
-
不能使用Java关键字,如public、class、static、void、int、double等
/* * 变量的基本用法 */ // 1.定义一个变量 int age; // 2.为变量赋值 age = 18; // 3.调用变量 // System.out.println(age); System.out.println("您的年龄:" + age);// 拼接 // 定义变量的同时为其赋值 int num = 6; System.out.println(num); // 同时定义多个变量 int a = 5, b = 8, c;// 以逗号隔开 System.out.println(a); // System.out.println(c);//变量必须先赋值才能调用 /* * 变量的命名规范 */ int wyl2b_$; int score; int kscj;// 考试成绩 int studyAverageSore; int sCore;// 区分大小写 // int void;//不能使用关键字
2.数据类型
2.1常用类型
类型 | 含义 | 长度 | 说明 |
---|---|---|---|
byte | 整数 | 占1字节 | 字节型,取值范围为[-128,127] |
short | 整数 | 占2字节 | 短整型,取值范围为[-32728,32767] |
int | 整数 | 占4字节 | 整数型,约21亿(最常用) |
long | 整数 | 占8字节 | 长整型,需要以l或L结尾 |
float | 小数 | 占4字节,单精度 | 需要以f或F结尾 |
double | 小数 | 占8字节,双精度 | 默认会将小数作为double类型处理 |
char | 字符 | 占2字节 | 表示单个字符,需要使用单引号引起来 |
boolean | 布尔 | 占一字节 | 表示真或假,值只能为true或false |
String | 字符串 | 表示一串字符,需要使用双引号引起来 |
Java中的基础数据类型有八种:byte、short、int、long、float、double、char、boolean
/*
* 常用类型
*/
byte num1 = 5;
short num2 = 26;
int num3 = 12;
long num4 = 666;// 需要以l或L结尾
System.out.println(num4);
float weight = 180.5f;// 需要f或F结尾
double height = 176.8;
System.out.println("体重:" + weight);
System.out.println("身高:" + height);
char sex = '女';// 需要使用单引号引起来
System.out.println("性别:" + sex);
boolean isOK = false;// 取值只能true或false
String name = "老王";
System.out.println("姓名:" + name);
2.2类型转换
两种数据类型:
-
自动类型转换
条件:
- 数据类型要兼容
- 目标类要大于源类型,如int——>long
-
强制类型转换
语法:
(目标数据类型)数据
可能会导致数据丢失,损失精度
/* * 自动类型转换,也称为隐式转换 */ int a = 3; long b = a; double c = a; double d = a + 2.5; System.out.println(c); System.out.println(d); /* * 强制类型转换 */ double e = 12.6; int f = (int) e; System.out.println(f); // String g="welcome"; // int h=(int)g; /* * char和int之间的转换 */ // 将char转换int int x = 'a';// 隐式转换 System.out.println(x); // 将int转换为char char y = (char) x;// 必须进行强制类型转换 System.out.println(y); char z = 97;// 不会报错,97被当作常数来处理,而非整型int(整数和整型是有所不同的) System.out.println(z);
3.获取用户输入
使用Scanner获取用户输入的数据
步骤:
-
导入Scanner
import java.util.Scanner;
-
创建一个Scanner
Scanner input=new Scanner(System.in);
-
使用Scanner获取输入数据
int a = input.nextInt();
double b = input.nextDouble();
String c = input.next();
package code01_基础; //1.导入Scanner,否则无法使用Scanner import java.util.Scanner; public class Test04_获取用户输入 { public static void main(String[] args) { // 2.创建一个Scanner对象,名称为input Scanner input = new Scanner(System.in); // 3.使用Scanner获取输入数据 System.out.println("请输入您的姓名:");// 提示用户输入 String name = input.next();// 使用next()获取数据,将数据存储到变量中 System.out.println("请输入您的年龄:"); int age = input.nextInt();// 使用nextInt()获取数据 System.out.println("请输入您的身高:");// 使用nextDouble获取小数 double height = input.nextDouble(); System.out.println("姓名" + name); System.out.println("年龄" + age); System.out.println("身高" + height); } }