Java的变量,数据类型以及运算符
1.变量及常量
1.1 内存如何存放数据
(1)内存条中存放的是临时数据,而永久数据存放在硬盘中
(2)栈、堆和方法区:栈一般存放变量;堆一般存放对象;方法区一般存放静态成员
1.2 变量
1.2.1 生活中的变量
类比”开房间“:
房间————-变量
房间名———变量名
房间类型—-变量类型
入住人数—-变量值
1.2.2 Java中的变量
步骤1:变量类型 变量名;
步骤2:变量名 = 变量值;
也可以将两步合并为一步 变量类型 变量名 = 变量值;
//定义变量
int money;//int 变量类型 // money 变量名称
//给变量赋值
money = 100000000;//money 已定义变量的名称 //= 赋值符号 // 100000000 赋予变量的值
//输出变量
System.out.println(money);
变量的命名规则:
(1)开头可以是字母,下划线’_‘以及美元符号’$’
(2)开头之后可以是字母,数字,下划线以及美元符号
(3)一般命名规范是首字符为小写字母,命名遵循驼峰规则,且命名需要有意义
1.3 常量
定义:在程序运行过程中,值只能初始赋值一次,不能更改
与变量的区别:常量存放固定值,变量存放可变值
命名规范:规则与变量命名相同,但常量名通常纯大写,单词之间用’_‘隔开
2.数据类型
2.1 Java基本数据类型
2.1.1 整型
整型包括①int(最常用)②byte ③short ④long
//整型
//byte a = 128;//会报错
byte a = 127;
short b = 32767;
int c = 2147483647;
long d = 9223372036854775807L;//long类型的赋值需要加特殊标记L
2.1.2 浮点数
浮点数包括①double(最常用)②float
//浮点数
float e = 3.402823e+38F;//float类型的赋值需要加特殊标记F
double f = 1.797693e+308;
2.1.3 字符型
字符型为char
//字符型
char g = 49;//ascii值
char h = '男';//某个字符
2.1.4 布尔值类型
布尔值类型为boolean
//布尔类型
boolean i = true;
boolean j = false;
2.2 Java引用类型String
//引用类型
//可以包含所有类型的字,包括不同的文字,数字,符号,空格
String a = "a";//String 是关键字,S需要大写 //变量值需要用双引号
String b = "\n@#$ !%^&*(\t";// 反斜杠\表示转义符号,常用的\n为换行\t为制表符
String c = "She said:\"I'm your mother!\"";//如果引号中出现英文双引号,可以使用转义字符
3.运算符
3.1 赋值运算符
‘=’为赋值运算符,运算结果是将’=’右边的值替换掉’=’左边的变量值
int whScore = 90;
int wmScore = whScore;//wmScore的值为90
3.2 算术运算符
对数值进行算术运算,包括‘+’,‘-’,‘*’,‘/’,‘%’(取余),返回值的类型为数值,具体类型参照下面自动类型转换
//算术运算符
int a = 2;
int b = 5;
int c = b / a;//c的值为2,自动取整
int d = b % a;//d的值为1
3.3 关系运算符
关系运算符是对符号两边的表达式进行比较判断,返回值为boolean类型
,<,>=,<=,可以对数值进行大小的比较
==,!=,可以对任意数据类型的值进行是否等值进行判断
//关系运算符
int e = 2;
int f = 3;
boolean g = e > f;//g的值为false
String h = "abc";
String i = "abc";
boolean j = h == i;//j的值为true
注意:String类型 一般情况优先使用 .equals()判断等值,而不是==
3.4 类型转换
3.4.1 自动类型转换
规则:从小到大,两种类型需要兼容(都是数值)
//自动转换
int a = 1;
char b = '4';
int c = a + b;//c的值为53
// byte(1字节) – > short(2字节)-- > int(4字节) – > long(8字节) --> float(4字节) – > double(8字节))
// char (2字节)-- > int(4字节) – > long(8字节) --> float(4字节) – > double(8字节)
// int d = a + 0.22;//会报错,只能是int自动转向double,double不能自动转向int
double d = a + 0.22;//数值类型互相兼容
3.4.2 强制类型转换
//强制转换
double e = 3.4;
//int f = e;//会报错
int f = (int)e;//使用圆括号加数据类型可以进行强制转换
//当大类型转换为小类型时,可能会发生数据精度的丢失
4.Scanner类
学习时需要用到键盘输入不同的值,简单了解如何使用Scanner类添加键盘输入
//Scanner类
//1.输出提示
System.out.print("请输入字符:");
//2.引入Scanner类 // import java.util.Scanner;
//3.创建Scanner对象
// 步骤1:new Scanner()创建Scanner对象
// 步骤2:System.in 引入System.in 参数
// 步骤3:scanner = 将返回值赋给scanner变量
// 步骤4:Scanner 声明变量scanner的类型时Scanner类型
Scanner scanner = new Scanner(System.in);
//4.调用scanner对象的next()方法获取键盘输入值
String input = scanner.next();
//5.输出变量input
System.out.println("你输入的字符是:"+input);
结果为
还没有评论,来说两句吧...