变量

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

【Java】变量的更多相关文章

  1. 菜鸟笔记:java变量命名及峰驼式命名法

    如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字,如"802",也可以是有趣的名字,如" ...

  2. 慕课网-安卓工程师初养成-2-5 如何命名Java变量

    来源:http://www.imooc.com/code/1221 如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字 ...

  3. 【细说Java】Java变量初始化顺序

    Java的变量初始化顺序,对这里一直似懂非懂,面试的时候也经常被问到,但答的一直不好,现在整理记录一下,以后忘记了可以来看看. 程序分为两个部分,第一个部分不考虑继承,第二个部分考虑继承: (1)不考 ...

  4. 在JS中调用JAVA变量

    在JS中调用JAVA变量可以,方法是:var JS变量名 = “<%=JAVA变量名 %>”<%中间写java代码,跟在JSP中一样%>在JAVA中 ,无法调用JS变量

  5. Java变量参数

    Java1.5添加新功能:可变参数:它适用于参数不确定性的数量,判断形势的类型.java变量参数数组操作. 特点: 1.今天的参数列表只能持续. 2.省略号(...)位于变量类型和变量名之间,前后有无 ...

  6. 简述Java变量和强制转换类型

    简述Java变量和强制转换类型 java变量 1. java变量 变量:顾名思义,就是在java执行程序过程中可以发生改变的量,就好比方程式中的未知数X一样. 变量的内存分配过程 int a ; // ...

  7. java变量和javascript变量之间的传递

    java代码是运行在服务器上的,返回的值只是静态的存在于页面,而javascript是脚本语言,是运行在客户端的!它们是两种完全不同的语言,变量不能直接进行交换,但是通过一定的方式,变量可以传递. j ...

  8. 如何命名Java变量

    如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理--变量名! 需要注意,给酒店房间起名字时可以是数字,如“802”,也可以是有趣的名字,如“牡丹”.“美国总统”.“水帘洞 ...

  9. JAVA 变量 数据类型 运算符 知识小结

    ---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...

  10. 关于Java变量的可见性问题

    转自:http://www.importnew.com/19434.html 博文前提 最近在oschina问答板块看到了一个关于java变量在工作内存和主存中的可见性问题:synchorized,s ...

随机推荐

  1. 哔哩哔哩直播录制工具v1.1.18

    软件介绍 看直播有时候非常精彩想要录制下来,或者非常喜欢某个主播想录制下直播全程,可去找录制软件的时候却发现有这样那样的问题,导致一番操作不尽人意.但是现在<B站直播录制工具>可以完美解决 ...

  2. 淘宝|蚂蚁|菜鸟|盒马|嘀嘀|饿了么面经(已拿多个offer)

    上一篇的同学拿到了bigo和腾讯的offer,这一次的分享来自两位同学的面试综合,他们分别拿到了菜鸟.嘀嘀.盒马的多个offer,由于面试的时间跨度时间太长,且面试的部门太多,只能回忆到具体的面试题, ...

  3. Eureka部署在阿里云所带来的问题

    没有那么多废话,直奔主题... 1.解决查看eureka界面时服务名显示而非ip+端口,以及解决显示ip而非阿里云公网ip问题(个人解决方式,如果和我这样配置还是不行,那就再百度或者谷歌下吧) eur ...

  4. 4. 上新了Spring,全新一代类型转换机制

    目录 ✍前言 版本约定 ✍正文 PropertyEditor设计缺陷 新一代类型转换 Converter 代码示例 不足 ConverterFactory 代码示例 不足 GenericConvert ...

  5. windows下python3和python2虚拟环境配置

    Python3 被越来越多的开发者所接受,同时让人尴尬的是很多遗留的老系统依旧运行在 Python2 的环境中,因此有时你不得不同时在两个版本中进行开发,调试. 如何在系统中同时共存 Python2 ...

  6. Kubernetes应用管理器OpenKruise之CloneSet

    OpenKruise OpenKruise 是 Kubernetes 的一个标准扩展,它可以配合原生 Kubernetes 使用,并为管理应用容器.sidecar.镜像分发等方面提供更加强大和高效的能 ...

  7. vue结合element-ui table本地分页

    <template> <el-table :data="tableData1.slice((start1-1)*length1,start1*length1)" ...

  8. 【Java并发编程】阿里最喜欢问的几道线程池的面试题?

    引言 上一篇文章我们有介绍过线程池的一个基本执行流程<[Java并发编程]面试必备之线程池>以及它的7个核心参数,以及每个参数的作用.以及如何去使用线程池 还留了几个小问题..建议看这篇文 ...

  9. Linux嵌入式学习-交叉编译mplayer

    http://bbs.gkong.com/archive.aspx?ID=286721

  10. Qt学习笔记-更高级的文本编辑器-完善第一版-gif动画

    现在的浏览器大多都有动作图标,现在我们也为浏览器加上图标. 在网上搜索到了几个ico的图标.现在直接拿来用. 首先创建资源文件. 在工程名上鼠标右键,选择add new 然后再选择 Qt Resour ...