小知识:计算机中的三大件
计算机中有三大件:CPU、内存、硬盘
CPU:CPU是中央处理器
内存:RAM:随机存取器
RAM中储存的数据只要程序关闭,数据就会丢失
硬盘:ROM:只读存取器
ROM可以持久性存储数据的。
变量的数据类型
一、目标:
1.掌握变量和常量的使用
1.1变量的概述
1.2了解变量和常量的命名规范
1.3掌握java 中的数据类型
1.4掌握数据类型转换(难点)
2.掌握scanner键盘输入
3.掌握常见的运算符
二、学习:
变量:可以变化的量,变量所存在的意义就是在内存中临时的储存数据
在Java中一个变量的使用:(变量的组成) —类似于住酒店的过程(内存=酒店)
1.数据类型(根据你要储存的内容 合理的分配一个内存空间) – 酒店的房间类型
2.变量名(如果没有变量名 那么使用这个变量时需要记忆内存地质) – 酒店的房间名
3.变量值(内存中存储的数据) – 酒店中需要居住的客人
数据类型:Java中为了合理的使用内存,将不同的数据划分成了8中不同的类型。
数值类型:
1.byte:整数型
2.short:整数型
3.int:整数型(Java中默认的整数类型,最常用的)
4.long:整数型
5.float:浮点型
6.double:浮点型(Java中默认的浮点数的类型)
非数值类型:
7.char:字符型
存储单个字符,必须用‘‘引用。例如:’1‘、’a‘、’啊‘
8.boolean:布尔型
只能存储两个值,一个为true(正确),一个是false(错误),存储判断结果。
引用数据类型:
9:String:字符串型
最常用的一种类型,以“”引起来的,例如:“a”、“卧槽”。
变量和常量的命名规范
Java中的变量名的组成:数字、字母、$和_都可以作为变量名的组成内容,数字不能开头。
1.变量名应该见名知意
2.变量名应该在使用单词或者拼音的时候要不全为单词,要么全为拼音。(切忌拼音和英文混合,也切忌使用中文)
3.变量名应该遵循小驼峰命名法(大驼峰命名法用于文件名),如果有多个单词,后面的每个单词首字母大写。
4.变量名可以采用下划线连接法(用_连接单词)
5.变量名不可以使用关键字和保留字。
(1)关键字:系统中有特殊含义的 单词
(2)保留字:以后可能在Java发展中被赋予含义的单词
Java中的常量:表示只可以赋值一次的变量 被final修饰
1.常量的名字出现的字母必须大写
2.如果在常量名中出现了多个单词,以下划线连接。:例如:WO_CAO。(有些语言没有常量,例如:Python)
例1:
public class BianLiang{
public static void main(String[] args){
//第一种方法为先声明一个变量,再为变量赋值。
//这句话的作用是声明一个变量,格式:数据类型 变量名;
String name;
//为变量赋值,格式为:变量名 = "要赋予的值"
name = "小王";
//第二种方法是声明变量的同时为它赋值
//这句话的作用是声明一个变量,再为变量赋值
String name1 = "小王";
}
}
例2:
public class XiaoWang{
public static void main(String[] args){
//输出这些信息:姓名 年龄 爱好 性别 学历 班级 籍贯 星座 婚否 ....
//这句话的意思是声明一个变量
String name;
//这句话的意思是为name这个变量赋值
name = "王毓东";
//这句话的意思是在声明年龄的同时为年龄赋值,并储存
int age = 22;
//这句话的意思是在声明爱好这个变量的同时为其赋值,并储存
String hobby = "踢球";
//这句话的意思声明一个变量为性别
char sex;
//为sex这个变量赋值
sex = '男';
//声明一个变量为学历,并未学历这个变量赋值
String edu = "本科";
//储存班级名
String classname = "j342";
//声明一个变量,并为这个变量赋值
char nativePlace = '皖';
//声明一个变量
String constellation;
//为变量赋值
constellation = "处女座";
//储存是否已婚
boolean marriage = false;
//储存高中第一次考试的英语成绩
double engScore = 149.5;
//储存我的银行卡余额
double money = 23333333.3;
System.out.println("我的名字是"+ name );
System.out.println("我的年龄是"+ age );
System.out.println("我的爱好是"+ hobby );
System.out.println("我的性别是"+ sex );
System.out.println("我的学历是"+ edu );
System.out.println("班级名称是"+ classname );
System.out.println("我的籍贯是"+ nativePlace );
System.out.println("我的星座是"+ constellation );
System.out.println("我是否已婚"+ marriage );
System.out.println("我的第一次英语考试成绩为"+ engScore );
System.out.println("我的银行卡余额为"+ money );
}
}
例3:
public class Mianji {
public static void main(String[] args) {
// 需求:计算圆的面积 π*r*r
// 存储π
final double PI = 3.14;
// 存储半径
double r = 2;
// PI = 3.24;
// 计算面积
double area = PI * r * r;
System.out.println("圆的面积为:"+area);
}
}
Scanner键盘输入(scanner:扫描器)(前期先死记硬背)
1.先导入scanner(把它请过来)
// 导入Scanner
import java.util.Scanner;
2.创建Scanner对象
// 创建Scanner对象
Scanner input = new Scanner(System.in);
3.使用Scanner来输入整数、小数、字符串…
// 将输入的内容存储到变量中
System.out.print("请输入您的姓名:");
// 字符串
String name = input.next();
System.out.print("请输入您的年龄:");
// 整数
int age = input.nextInt();
System.out.print("请输入您的余额:");
// 小数
double money = input.nextDouble();
小练习:
1:利用变量将个人信息(不少于十条)输入并输出。
2:利用Scanner将个人信息(不少于十条)输入并输出。
数据类型转换
数据类型的出现是为了更好的利用资源
在Java中存在自动数据类型转换。
在同一类型下(数值类型),取值范围大的数据类型,可以存储取值范围小的数据类型值。(自动的)
在同一类型下(数值类型),取值范围小的如果想存储取值范围大的数据类型,需要强转。
但是强转会损失数据的精度。
int money = (int)10.6;// 强制类型转换
//输出的结果为取整,不是四舍五入
System.out.println(money);
常见的运算符
Java中为了更好的处理数据,提供了多种运算符号。
1:算数运算符
例如:+(加法)、-(减法)、*(乘法)、/(除法)、%(取余数/取模/球模)、++(自增1)、–(自减1)、
++在后面表示先使用变量原来的值 然后再执行++效果
2:赋值运算符
“=”赋值符号就是将=右侧的内容赋值给=左侧的内容
int num = 10;//将10赋值给num
int num2 = num;//将num赋值给num2
System.out.println(num2);
复合运算符:
+=:
-+:
*=:
/=:
%=:
int num = 10;
num +=1; //num = num + 1;//num = num + 1 将num先运行运算然后再将运算结果赋值给num本身 等价于num++;
System.out.println(num);
num /= 2; // num = num / 2
3.关系运算符:
1:> (大于)
2:<(小于)
3:>=(大于等于)
4:<=(小于等于1)
5:==(等于)
6:!=(不等于)
关系运算符的结果就是布尔类型: ture 或者 false
4:逻辑运算符
1:& 与 并且------>&&(短路与)
2:| 或 或者------>||(短路或)
3:! 非 取反------>
单个&和两个&在逻辑关系上都表示并且的含义,指的是多个运算之间都必须是成立的,否则最终结果不成立,并且都得成立。
单个&在表示并且时,如果在执行逻辑运算时,前方的某个关系运算符没有成立(false),那么它后面的代码还会照常运算。
&&如果在执行逻辑运算时,前方的某个关系运算符没有成立,那么它后面的代码不会再执行,被短路了。
推荐使用&&,性能更佳,不用计算无用代码。
5.三目(三元)运算符
语法:条件(关系表达式) ? 表达式1 : 表达式2
alse
4:逻辑运算符
1:& 与 并且------>&&(短路与)
2:| 或 或者------>||(短路或)
3:! 非 取反------>
单个&和两个&在逻辑关系上都表示并且的含义,指的是多个运算之间都必须是成立的,否则最终结果不成立,并且都得成立。
单个&在表示并且时,如果在执行逻辑运算时,前方的某个关系运算符没有成立(false),那么它后面的代码还会照常运算。
&&如果在执行逻辑运算时,前方的某个关系运算符没有成立,那么它后面的代码不会再执行,被短路了。
推荐使用&&,性能更佳,不用计算无用代码。
5.三目(三元)运算符
语法:条件(关系表达式) ? 表达式1 : 表达式2
()优先级是最高的!!