【Java】变量

变量

1、变量的概念

变量的作用:变量用来存储数据。

变量的本质:代表内存的一块存储区域,内存的一块存储区域。

变量的值:变量中的值是可以改变的。

声明变量:数据类型 变量名; String name;

变量赋值:变量名 = 变量值;name = "菜鸡文"

声明变量和变量的赋值可以同时进行,也可以分开进行。但是在变量被访问之前,必须有值。

例如:数据类型 变量名 = 变量初始值;String name="菜鸡文"

2、变量的三要素

1、数据类型

2、变量名

3、值

数据类型:决定内存大小,可以存什么值
变量名:如何访问这块存储区域
变量值:里面存储的数据

3、变量的使用应该注意什么?

要求:

  • 变量必须先声明后使用

  • 变量再使用之前必须有初始值

  • 变量有作用域

  • 在同一个作用域中不能重名

1、先声明后使用

如果没有声明,会报“找不到符号”错误

2、在使用之前必须初始化

如果没有初始化,会报“未初始化”错误

3、变量有作用域

如果超过作用域,也会报“找不到符号”错误

4、在同一个作用域中不能重名

4、变量的声明和赋值、使用的语法格式?

1、变量的声明的语法格式:

数据类型  变量名;
例如:
int age;
String name;
double weight;
char gender;
boolean isMarry;

2、变量的赋值的语法格式:

变量名 =;
例如:
String name = "菜鸡文";//字符串的常量必须用""(双引号)
char gender = '女';//单字符的常量,必须用''(单引号)
double weight = 50.5;//小数类型
boolean marry = true;//布尔类型    真的,假的,成立,不成立

3、变量的使用的语法格式:

通过变量名直接引用

例如:
(1)输出变量的值
System.out.print(name);
System.out.print("姓名:" + name);//""中的内容会原样显示
System.out.print("name = " + name);
(2)计算
age = age + 1;

5、code

变量

/*
环境变量:path
环境变量是给操作系统找xx命令的路径。
path  value

变量:
1、作用:用来存储值(数据)
在Java中,变量本质上,就是代表一块内存区域。
变量中的数据是存储在JVM内存中。
内存区域 什么的内存呢  OS内存  JVM占OS内存一部分的  小块
2、变量有三个要素:
数据类型 变量名  值  String name = "菜鸡文";
(1)数据类型
是用来存储:字符串、小数、整数、单个字符、布尔值、对象....
String  double float byte short int long char boolean
(2)变量名
在程序中,通过变量名来进行访问这块内存及其里面的数据
变量名   访问  内存里面的数据
(3)值
变量中存的具体的值
变量中的值是可以变的
你的值放到你那里  但可以被覆盖了  重新指向什么 还是删除了再指向  垃圾回收 重新指向了
*/
class TestVariable{
    public static void main(String[] args){
        //想要用一个变量,来存储年龄
        //int就是数据类型
        //age就是变量名
        //18就是变量的值
        int age = 18;
        System.out.println(age);

        age = age + 1;

        System.out.println(age);
    }
}

变量定义使用

/*
Define:定义,声明
Use:使用
Variable:变量

变量使用的原则:
(1)先声明后使用
包括后面用到的类、方法等,都是遵循先声明后使用
你要声明再使用
声明个女朋友   new一个
光使用不声明???。。。
(2)变量必须先初始化(第一次赋值)再访问它的值(打印、计算、比较操作)
必须先初始化
(3)变量的声明,在同一个作用域中,只能声明一次,但是赋值可以很多次
作用域:从变量声明处开始,到它所属的{}结束
我一直给你 一直给你 之前的都没了的
1、如何声明一个变量?
格式:
	数据类型 变量名;

2、如何给变量赋值?
格式:
	变量名 = 变量值;

int double char boolean String
常用的变量的数据类型(刚开始):
int(整数)
double(小数)
char(单个字符)
String(字符串)
*/
class DefineAndUseVariable{
    public static void main(String[] args){
        //int age;//声明
        //age = 18;//赋值

        //也可以把声明和第一次赋值合并成一句
        int age = 18;
        //	int age = 19;//错误的,第二次赋值不用再加数据类型
        age = 19;//第二次赋值
        System.out.println(age);

        if(true){
            int num = 0;
        }
        //System.out.println(num);//错误的,出了num的作用域

        String name = "菜鸡文";//字符串的常量必须用""(双引号)
        char gender = '女';//单字符的常量,必须用''(单引号)
        double weight = 50.5;//小数类型
        boolean marry = true;//布尔类型    真的,假的,成立,不成立

    }

    public static void test(){
        //System.out.println(age);//错误的,出了age的作用域
    }
}

练习

打印个人信息

/*
练习1:打印个人信息

(1)数据类型
"xxx" -->字符串
10-->整数,整型
'x'-->字符,单个字符
true-->布尔值,逻辑值,它只有两种情况,true和false
70.5-->小数类型
(2)常量
字符串的常量必须用""(双引号)
单字符的常量,必须用''(单引号)
其他整数、小数、布尔等不需要加符号。

System.out.println(xx);  输出xx之后换行,ln==line
System.out.print(xx);输出xx之后不换行,下面的输出内容就会接着输出
*/
class TestExer1{
    public static void main(String[] args){
        System.out.println("菜鸡文");
        System.out.println(18);
        System.out.println('拿');
        System.out.println(false);
        System.out.println(70);
        System.out.println("--------------------------------");

        System.out.print("姓名:");
        System.out.print("菜鸡文");
        //菜鸡文
        //18
        //拿
        //false
        //70
        //--------------------------------
        //姓名:菜鸡文
        //Process finished with exit code 0
    }
}

打印个人信息
个人信息使用变量保存

/*
练习2:打印个人信息
个人信息使用变量保存
*/
class TestExer2{
    public static void main(String[] args){
        String name = "菜鸡文";
        String password = String.valueOf(123456);
        int age = 18;
        char gender = '男';
        double height = 178.0;
        double weight = 70.5;
        boolean marry = false;

        System.out.println(name);
        System.out.println(password);
        System.out.println(age);
        System.out.println(gender);
        System.out.println(height);
        System.out.println(weight);
        System.out.println(marry);
        System.out.println("---------------------");

		/*
		""中的内容,原因显示
		name是变量,在显示的时候,不是显示name单词,而是把name变量中存的值取出来显示,所以这里name不加""
		"姓名:" + name:把姓名:和name变量中的值拼接起来一起显示
		*/
        System.out.println("姓名:" + name);
        System.out.println("年龄:" + age);
        System.out.println("性别:" + gender);
        System.out.println("身高:" + height);
        System.out.println("体重:" + weight);
        System.out.println("是否已婚:" + marry);
    }
}

声明一些变量,来保存,一份图书信息:

/*
练习3:
声明一些变量,来保存,一份图书信息:
书名:
作者:
价格:
销量:
库存量:
是否是促销产品:

*/
class TestExer3{
    public static void main(String[] args){
		/*
		String的S是大写的
		*/
        String bookName = "《Java从入门到放弃》";
        String author = "菜鸡文";
        double price = 100.0;
        int sale = 0;
        int amount = 100;
        boolean cu = true;

        System.out.println("书名:" + bookName);
        System.out.println("作者:" + author);
        System.out.println("价格:" + price);
        System.out.println("销量:" + sale);
        System.out.println("库存量:" + amount);
        System.out.println("是否促销:" + cu);
        //书名:《Java从入门到放弃》
        //作者:菜鸡文
        //价格:100.0
        //销量:0
        //库存量:100
        //是否促销:true
    }
}

code:https://github.com/liuawen/Learning-Java

原文地址:https://www.cnblogs.com/liuawen/p/12854016.html