【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
【Java】变量的更多相关文章
- 菜鸟笔记:java变量命名及峰驼式命名法
如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字,如"802",也可以是有趣的名字,如" ...
- 慕课网-安卓工程师初养成-2-5 如何命名Java变量
来源:http://www.imooc.com/code/1221 如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理---变量名! 需要注意,给酒店房间起名字时可以是数字 ...
- 【细说Java】Java变量初始化顺序
Java的变量初始化顺序,对这里一直似懂非懂,面试的时候也经常被问到,但答的一直不好,现在整理记录一下,以后忘记了可以来看看. 程序分为两个部分,第一个部分不考虑继承,第二个部分考虑继承: (1)不考 ...
- 在JS中调用JAVA变量
在JS中调用JAVA变量可以,方法是:var JS变量名 = “<%=JAVA变量名 %>”<%中间写java代码,跟在JSP中一样%>在JAVA中 ,无法调用JS变量
- Java变量参数
Java1.5添加新功能:可变参数:它适用于参数不确定性的数量,判断形势的类型.java变量参数数组操作. 特点: 1.今天的参数列表只能持续. 2.省略号(...)位于变量类型和变量名之间,前后有无 ...
- 简述Java变量和强制转换类型
简述Java变量和强制转换类型 java变量 1. java变量 变量:顾名思义,就是在java执行程序过程中可以发生改变的量,就好比方程式中的未知数X一样. 变量的内存分配过程 int a ; // ...
- java变量和javascript变量之间的传递
java代码是运行在服务器上的,返回的值只是静态的存在于页面,而javascript是脚本语言,是运行在客户端的!它们是两种完全不同的语言,变量不能直接进行交换,但是通过一定的方式,变量可以传递. j ...
- 如何命名Java变量
如同酒店会给每个房间起个性化的名字一样,程序中的变量也需要用合理的名字进行管理--变量名! 需要注意,给酒店房间起名字时可以是数字,如“802”,也可以是有趣的名字,如“牡丹”.“美国总统”.“水帘洞 ...
- JAVA 变量 数据类型 运算符 知识小结
---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...
- 关于Java变量的可见性问题
转自:http://www.importnew.com/19434.html 博文前提 最近在oschina问答板块看到了一个关于java变量在工作内存和主存中的可见性问题:synchorized,s ...
随机推荐
- word IF嵌套实现登记学生成绩(合格,良好,优秀)
word IF函数 IF语法 IF(判断条件,条件成立的动作,条件不成立的动作),以逗号(英文)分隔 例:=IF( 0 < 1 , "good" , "bad&qu ...
- 牛客挑战赛46 D
题目链接: 数列 查询有多少\([l,r]\)区间满足每个数出现\(k\)的倍数次 即为\(1\)到\(r\)与\(1\)到\(l-1\)每个数相减的次数为\(k\)的倍数次 可以使用哈希维护 记录每 ...
- HBase按照TimeStamp删除数据
#!/bin/bash #两种时间输入,一种是输入起始日期,另一种是直接输入hbase里面数据的起始时间戳 if [ $# != 5 ];then echo 'usage:sh byTimestamp ...
- 基于nginx负载均衡及frp的内网穿透实例3-多用户多网站共用80端口
原文地址:点击跳转 最近frp用户量有点多,而且很多用户都是想把部署于本地或者内网的web服务暴露至公网,之前提到过,暴露到公网之后如果一般都需要用域名:端口的方法来访问,但是没有人会喜欢用这种方式访 ...
- 5.innodb B+tree索引
索引基础 索引是数据结构 1.图例 2.B+tree 特征 1.非叶子节点不保存数据,只用来索引,数据都保存在叶子节点 2.查询任何一条数据,查询的索引深度都是一样的 3. B+ 树中各个页之间是通过 ...
- springcloud执行流程理解图
执行流程图
- 学习Promise异步编程
JavaScript引擎建立在单线程事件循环的概念上.单线程( Single-threaded )意味着同一时刻只能执行一段代码.所以引擎无须留意那些"可能"运行的代码.代码会被放 ...
- ESP8266系列图片外观 Wi-Fi模块一共有01~14十多款模块
- LOG_PATH_IS_UNDEFINED
问题: SpringBoot + LogBack 写日志,除了正常的日志之外,程序跑起来后会在项目根目录多生成一个 LOG_PATH_IS_UNDEFINED 的文件夹,我的配置是以下: applic ...
- mysql 创建[序列],功能类似于oracle的序列
参考自菜鸟教程 https://www.runoob.com/mysql/mysql-using-sequences.html 使用函数创建自增序列管理表(批量使用自增表,设置初始值,自增幅度) 第一 ...