Java入门基础知识之变量

不羁岁月 提交于 2020-03-04 22:34:48

1、变量
指计算机内存中的一块存储空间,是存储数据的基本单元

例:
酒店–内存
酒店中包含房间每个房间就相当于是一个变量
房间号-变量名
房间的类型-变量的数据类型
房间的客人-变量值

2、变量的使用
声明:数据类型 变量名;例如:int money;
赋值:变量名=值;例如:money=100;//将数值赋给money

3、变量的声明
定义变量的方法:

  1. 先声明,再赋值:数据类型 变量名; 变量名=值;
  2. 声明并赋值:数据类型 变量名=值; //变量未赋值不能使用
  3. 多个同类型变量的声明与赋值:数据类型 变量1,变量2,变量3=值3,变量4,变量5=值5;
    PS:Java是强类型语言,变量的类型必须与值的类型一致

4、数据类型
数据类型分为基本数据类型和引用数据类型

  1. 基本数据类型:整数、小数、字符、布尔
    ①整数
    整数的取值范围
    字节(byte)类型 1Byte=8bit 一共可存2^8=256个整数 0000 0000 0~127 128个正数 1111
    1111 -1~128 128个负数 高位表示符号位1负0正 byte类型的数据标示的数据范围:-128~127
    如需为long类型,需在后面加L或l

    ②小数、浮点型
    在这里插入图片描述
    小数/浮点型:采用科学计数法表示
    2E3等价于210^3=2000.0;
    3E5等价于3
    10^5=300000.0;
    double为浮点数的默认类型,如需为float类型赋值,需在字面值后面加F/f,如需为double类型赋值,可以在字面值后面加D/d;

    ③字符型
    char 2字节 0-65535 Unicode编码(万国码)
    Unicode字符集支持ASCII码,其中每个字符都对应一个十进制整数;
    为字符赋值:char c1= ‘A’;
    为整数赋值:char c2= 65;
    为进制赋值:char c3=’\u0041’;
    转义字符:\n 换行符 \t 缩进(制表位) \ 反斜线’ 单引号 " 双引号

    ④布尔
    boolean 1字节 ture/false

  2. 引用数据类型:字符串、数组、对象,接口,类
    字符串:String 任何""之间的字面值 Unicode字符序列
    取值方法:String str1=“你好”;

5、类型转换
自动类型转换:两种类型互相兼容且目标类型大于源类型
byte–>short–>int–>long
float–>double
char不能转换为short
char–>int
int–>float/long
强制类型转换:两种类型互相兼容且目标类型小于源类型

6、表达式

使用运算符连接的变量或字面值,并可以得到一个最终结果。
类型自动提升:两个操作数有一个为double,计算结果自动提升为double;如果没有double,有一个为float,则提升为flaot;如果没有float,有一个为long,则提升为long;如果操作数中没有long,有一个为int,则提升为int;如果没有int,均为short或byte,仍提升为int;

7、运算符

  1. 算术运算符(两个操作数进行运算)
    +加、求和
    -减、求差
    *乘、求积
    /除、求商
    %模、求余
    ++递增、变量值+1
    –递减、变量值减1
    ++/–在后先使用变量x,后进行+/-1赋值运算(先使用,后+/-1);

  2. 赋值运算符
    = 直接赋值
    +=求和后赋值
    -= 求差后赋值
    *= 求积后赋值
    /= 求商后赋值
    %= 求余后赋值;

  3. 关系运算符
    大于 >
    小于 <
    大于等于 >=
    小于等于 <=
    等于 ==
    不等于 !=

  4. 逻辑运算符
    && 与(并且) 两个操作数同时为真,结果为真;
    || 或(或者) 两个操作数有一个为真,结果为真;
    ! 非(取反) 意为"不是" ,真即是假,假即是真;

  5. 逻辑短路运算符
    && 与(并且) 短路与,左侧表达式为假时,不计算右侧,结果即为假;
    || 或(或者) 短路或,左侧表达式为真时,不计算右侧,结果即为真;
    & 与(并且) 非短路与,位与运算符
    | 或(或者) 非短路或,位或运算符

  6. 三元运算符
    先判断 然后再获取对应的结果
    ?: //语义:布尔表达式?结果1:结果2 当表达式结果为真,获得结果1;反之获得结果2;

  7. 位运算符:两个操作数基于二进制数 按位进行计算

     &     位与    非短路与。两个数位,同时为1,结果为1
     |     位或    非短路或。两个数位,有一个为1,结果为1
     ^     异或     对应位上的数,相同为0,不同为1;
     ~     求反    按位求反1变0,0变1; 	
     >>	右移(带符号)    按位右移1位(高位补原符号位);
     <<   左移    按位 左移1位;
    >>>  右移(无符号)    按位 右移1位(高位补0);`
    

8、控制台(键盘)输入

程序运行中,可在控制台(终端)手动录入数据,再让程序继续执行。

java.util.Scanner input = new java.util.Scanner(System.in);

导包语法:import 包名.类名;//将外部class文件功能引入到自身文件中
书写位置:package之后(如果有),类的外面,可以有多句。
每个类中默认都有import java.lang.*;

package *;
//引入Scanner包后
import java.util.Scanner;
//或者可以写为:import java.util.*;
public class * {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
	}
}

使用顺序:
1、导入java.util.Scanner;
2、声明Scanner类型的变量Scanner sc = new Scanner(System.in);
3、使用Scanner类中对应的函数(区分类型):
sc.nextInt(); //获得整数
sc.nextDouble(); //获得小数
sc.next(); //sc.nextLine();获得字符串
sc.next().charAt(0); //获得单个字符,即字符串的首字母

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!