变量和数据类型 笔记分享

hi~ 我又来啦~
下面是这几天的笔记↓↓↓↓↓

变量和数据类型

环境变量:存储了各种程序所需的环境信息。

变量是可以用来存储数据的。

一、掌握变量和常量的使用

1.变量的概述

变量:可以变化的量,变量存在的意义就是用于在内存中去临时性的存储数据。

在Java种一个变量的使用:

变量的组成—— 类似于住酒店的过程(内存类似于酒店)

  • 数据类型(根据你要存储的内容 合理的分配一个内存空间)——酒店的房间类型(双人间、单人间)
  • 变量名(如果没有变量名 那么使用这个变量时 需要记忆内存地址 3nas23fids)——酒店的房间号(101、302)
  • 变量值(在内存中要存储的数据)——住酒店的客人
2.变量的使用
  • 变量
public class Demo1 {
	public static void main(String[] args) {
		// 两种方式使用
		// 【1.先声明再赋值】
		// 声明:数据类型  变量名; 
		String name; 
		
        // 赋值:向对应的变量的内存空间进行存储数据
		// 变量名 = 变量值;(将小杜这个值赋给name这个变量)
		name = "雷锋";
		
        // 【2.声明的同时并赋值】
		// 数据类型  变量名  = 变量值;
		String stuName = "雷锋"; 
	}
}
public class Demo2 {

	public static void main(String[] args) {
		// 存储小雷的真实姓名
		// 先声明
		String name;
		// 再赋值
		name = "雷锋";
		
		// 存储小雷的年龄
		// 声明的同时并赋值
		int nianLing = 22;
		
		// 存储小雷的暗恋对象
		// 声明的同时并赋值
		String anLianDeDuiXiang = "神仙姐姐";
		
		// 存储小雷爱玩的游戏
		String game = "扫雷 连连看";
		
		// 存储小雷的性别
		char gender;
		gender = '男';
		// male  female
		/*char gender;
		gender = 'm';*/
		// 1男性 2女性
		// int gender = 1;
			
		// 存储小雷是否有对象
		boolean hasCP = true;
		
		// 存储小雷的银行卡余额
		double money = 5.21;
		
		// 注意:float  long
		// Java中默认整数就是int  小数就是double
		// 在数字后写大写F或小写的f
		float f = 10.1F;
		// 在数字后写【大写的L】或小写的l
		long lo = 10L;
	}
}
public class Demo4 {
	
    public static void main(String[] args) {
		
		String name;
		name = "小雷";
		
		int age = 22;
		
		// 转义字符
		// \n表示换行
		// \t表示一个制表位Tab
		// 输出完会换行  ln  line行
		// System.out.println("我的姓名是:"+name+"\n我的年龄:"+age);
		
        // 输出完不换行
		System.out.print("我的姓名:"+name);
		System.out.print("我的年龄:"+age);
	}
}
  • 常量: 表示只可以赋值一次的变量 被final修饰
public class Demo2 {
	public static void main(String[] args) {

		// 需求:计算圆的面积 π*r*r
		// 存储π
		// 常量:表示只可以赋值一次的变量  被final修饰
		final double PI = 3.14;
		
		// 存储半径
		double r = 2;
		
		// 计算面积
		double area = PI * r * r;
		System.out.println("圆的面积为:"+area);
	}
}
3.了解变量和常量的命名规范

变量命名:

数字、字母、$和_都可以作为变量名的组成内容,数字不能开头。

变量规范:

  • 变量名应该见名知义(abc不如name表示含义清楚)
  • 变量名切忌拼音和英文混合,切记中文 (要么全是拼音 要么全是英文)
  • 变量名应该遵循小驼峰命名法 (首字母小写,如果有多个单词,后面的每个单词首字母大写!)
    • helloworld × helloWorld √
    • myname × myName √
    • myinfo × myInfo √
  • 变量名可以采用下划线连接法
    • hello_world my_name my_info
  • 变量名不允许使用关键字和保留字
    • 关键字:系统中有特殊含义的单词
    • 保留字:以后可能在Java发展中会被赋予特殊含义的单词

**常量命名:**常量的名字中出现的字母必须全部大写

**常量规范:**如果在常量名中出现了多个单词,以下划线连接。例如:MY_NAME

4.掌握Java中的数据类型

Java中为了合理的使用内存,将不同的数据,划分成了不同的类型。

8种类型(基本数据类型):

数值类型:

  • 整数型: 1 2 3 4 5 6 34 45 ……

    • byte
    • short
    • int Java中默认的整数类型
    • long
  • 浮点型: 1.1 1.3 34.54……

    • float
    • double Java中默认的浮点数的类型

在这里插入图片描述

非数值类型:

  • char(字符型) 存储单个字符用,以单引号包裹。例:'a' '我' '1'
  • boolean(布尔型) 只能存储两个值,一个为true正确(是、真……),一个是false错误(否、假……),储存一些判断结果比较合适

引用数据类型:

  • String(字符串型) 最常用的类型,以双引号包裹。例:"你好" "呵呵" "abc"
5.掌握数据类型转换(难点)

在Java中存在自动数据类型转换。

  • 在同一类型下(数值类型),取值范围大的数据类型,可以存储取值范围小的数据类型值。(自动的)
double money = 10; //(自动类型转换)
System.out.println(money);//10.0
  • 在同一类型下(数值类型),取值范围小的数据类型,如果想存储取值范围大的数据类型值,需要强转。(强转,取整 不是四舍五入!!会损失数据的精度!!)
int money = (int)10.6; // 强制类型转换
System.out.println(money); // 10 不会四舍五入

在这里插入图片描述

二、掌握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();

三、掌握常见的运算符

Java中为了更好的处理数据,提供了多种运算符号。

1.算数运算符
  • + 加法
  • - 减法
  • * 乘法
  • / 除法
  • % 取余数 (取模/求模) 例如:5 % 2 = 1; 5模于2等于1
  • ++ 自增1
  • -- 自减1
// 除法
int num1 = 5;
int num2 = 2;
// 计算商  两个数如果都是整数 那么结果一定是整数
System.out.println(num1+"  /  "+num2+" = "+(num1 / num2));  // 2
// 当其中出现了一个范围大的类型 那么最终的结果就采用此类型
double num1 = 5;
int num2 = 2;
System.out.println(num1 / num2); // 2.5
int num = 10;
/*num ++;
++ num;*/
// 输出语句也是一种使用变量的方式
// ++在后面表示先使用变量原来的值  然后再执行++效果
// System.out.println(num ++);
// ++在前面表示先执行++效果 然后再使用变量目前的值
System.out.println(++ num);
System.out.println(num);
int num = 1;
// 后++ 先使用原来的值然后再自增
// 前++ 先自增然后再使用值
// int result = 1 + 3
// int result = num + ++++num
int result = num++      +      ++num;
System.out.println(result);
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本身  等价于num++;
    System.out.println(num); // 11
    
    num /= 2; // num = num / 2
3.关系运算符
  • >

  • <

  • >=

  • <=

  • == 比较相等

  • != 不相等

关系运算符的结果就是布尔类型。true false

int num1 = 11;
int num2 = 12;

// System.out.println(num1 > num2);
System.out.println(num1 != num2);
4.逻辑运算符
  • & 与 并且 &&(短路与)
  • | 或 或者 ||(短路或)
  • ! 非 取反
// 需求:判断变量num是否大于5 小于 20呢?
int num = 2;
// 5 < num < 20
// true < 20
// System.out.println(5 < num < 20);

// System.out.println(5 < num & num < 20);
System.out.println(!(num < 5));
// 单个与和两个与在逻辑关系上 都表示并且的含义,指的是多个关系运算之间都必须是成立(满足)。
// 单个与,如果在执行逻辑运算时,前方的某个关系运算符没有成立(false),那么它后边的代码还会照常运算。
// 短语与,如果在执行逻辑运算时,前方的某个关系运算符没有成立,那么它后面的代码不会再执行,被短路了。
// 推荐用第二种,性能更佳,不用计算无用代码!
int num = 2;
// 5 < num < 20
// System.out.println(num > 5 & ++num < 20);
System.out.println(num > 5 && ++num < 20);
System.out.println(num);
5.三目(元)运算符

语法:条件(关系表达式) ? 表达式1 : 表达式2

// 创建对象
Scanner scan = new Scanner(System.in);

// 网ba 18岁才可以进入
System.out.print("请输入您的年龄:");
int age = scan.nextInt();
// System.out.println("我到底能不能去网ba?"+(age >= 18));
// 去  不去
String result = (age >= 18) ? "能去" : "不能去";
System.out.println("我到底能不能去网ba?"+result);
6.运算符优先级

小括号()优先级别最高

以上就是这几天的学习内容 欢迎阅读!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值