Java入门系列-04-java中的变量

这篇文章为你搞懂三个问题

  1. 什么是变量?
  2. 如何使用变量?
  3. 变量命名有哪些规范?

变量

计算机的内存类似于人的大脑,电脑使用内存来存储计算所需要的数据。

内存像旅馆一样,不同的房间类型对应不同的数据类型,内存存储数据时会根据数据的需求为它申请一块合适的空间。用于存储数据的这个空间就是变量。

变量名 内存地址
name 0x5c2a0c3f.. 张三
age 0xcd4d72a... 10

变量名、内存和存储的值如上表↑

可以看到内存地址长而不方便记忆,但是变量名可以像给一个人起外号一样,方便记忆

使用变量的步骤

二狗放学回家后,妈妈给他做好了丰盛的饭菜,二狗吃上这些饭菜需要哪几步呢?

  1. 需要先准备一个碗或者盘子
  2. 将菜或汤装入容器中
  3. 夹菜或者用勺子喝汤

使用变量的步骤就和使用二狗吃饭的步骤是一样的:

  1. 声明变量,根据数据类型在内存中申请空间
  2. 赋值,将数据存储至对应的内存空间
  3. 使用变量,取出数据使用

用下面的代码演示变量的使用过程:

public class DemoVariable{
    public static void main(String[] args){
        //1.声明变量
        int a;
        //2.赋值
        a=10;
        //3.使用变量(打印变量的值到控制台)
        System.out.println(a);
    }
}

上面的赋值语句看起来很像数学中的等式,但赋值和等号是完全不同的

在编程中等号的作用是将"="右边的值放入左边的变量中,以后都要记住这个规则

也可以将声明变量和赋值同时进行:

public class DemoVariable{
    public static void main(String[] args){
        //1.声明变量并赋值
        int a=10;
        //2.使用变量(打印变量的值到控制台)
        System.out.println(a);
    }
}

总结

  1. 声明变量的语法:

    数据类型 变量名;

  2. 变量赋值的语法:

变量名=数值;

  1. 声明变量和变量赋值同时进行的语法:

数据类型 变量名=数值;

变量的命名规则

1.在java中变量名的大写是有严格区分的,像 Javajava 就是两个完全不同的变量

2.允许以下规则的字符做变量名

首字符: 1.字母 2.下划线 3.$符号

其余部分:任意多的 1.数字 2.字母 3.下划线 4.$符号

例如:a _ $_ a1 $a user_name

3.java中的变量名不能和关键字冲突

生活在古代的人民起名就不能随便起,如果和皇帝的名字冲突了可能就要杀头。java编译器就和古代皇帝一样霸道:“不按我的规矩来,哼哼,就等着报错吧”

例如:public static void class 这些关键字及以后咱们要说到的数据类型

4.要避免无意义的变量名

例如:aa bbb z1 haha

试一试

  1. 下面的变量名中哪些是错误的?为什么?
    string String a+b 9variable my name
  2. 在 eclipse 中编写如下代码,能否运行?为什么?
    public class Test1 {
    public static void main(String[] args) {
        String book;
        System.out.println(book);
    }
    }
  3. 在 eclipse 中编写如下代码,能否运行?为什么?
    public class Test2 {
    public static void main(String[] args) {
        int num=20;
        int num=15;
    }
    }

搜索关注公众号「享智同行」,第一时间获取技术干货

原文地址:http://blog.51cto.com/13219188/2296145

时间: 2024-10-19 07:10:43

Java入门系列-04-java中的变量的相关文章

Java 集合系列 04 LinkedList详细介绍(源码解析)和使用示例

java 集合系列目录: Java 集合系列 01 总体框架 Java 集合系列 02 Collection架构 Java 集合系列 03 ArrayList详细介绍(源码解析)和使用示例 Java 集合系列 04 LinkedList详细介绍(源码解析)和使用示例 概要  和学习ArrayList一样,接下来呢,我们先对LinkedList有个整体认识,然后再学习它的源码:最后再通过实例来学会使用LinkedList.内容包括:第1部分 LinkedList介绍第2部分 LinkedList数

(转) Java 集合系列04之 fail-fast总结(通过ArrayList来说明fail-fast的原理、解决办法)

概要 前面,我们已经学习了ArrayList.接下来,我们以ArrayList为例,对Iterator的fail-fast机制进行了解.内容包括::1 fail-fast简介2 fail-fast示例3 fail-fast解决办法4 fail-fast原理5 解决fail-fast的原理 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3308762.html 1 fail-fast简介 fail-fast 机制是java集合(Collection)中

java io系列04之 管道(PipedOutputStream和PipedInputStream)的简介,源码分析和示例

本章,我们对java 管道进行学习. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_04.html java 管道介绍 在java中,PipedOutputStream和PipedInputStream分别是管道输出流和管道输入流.它们的作用是让多线程可以通过管道进行线程间的通讯.在使用管道通信时,必须将PipedOutputStream和PipedInputStream配套使用.使 用管道通信时,大致的流程是:我们在线程A中向PipedOut

java入门学习:Java中的main()方法详解

本文来源:http://www.zretc.com/technologyDetail/445.html 在Java入门学习中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等. 在看Java中的main()方法之前,先看一个最简单的Java应用程序HelloWorld,我将通过这

Java入门——深入理解Java三大特性

Java入门——深入理解Java三大特性 本Blog内容: 封装 继承 多态 封装 封装把一个对象的属性私有化,同时提供一些可以被外界访问的属性的方法(getter,setter),如果不想被外界方法,我们大可不必提供方法给外界访问. 封装确实可以使我们容易地修改类的内部实现,而无需修改使用了该类的客户代码. 可以对成员变量进行更精确的控制.(在setter方法中进行实际意义的校验) 总结:控制属性访问权限,不是你想改就能改.容易修改属性类型.精确控制属性的取值范围. 继承 继承是使用已存在的类

JavaScript入门:003—JS中的变量

编程语言都是相同的,JS中也是有变量的.首先JS的变量是区分大小写的,这个需要注意,比如number和Number是不同的变量.不管是常用类型的,还是对象类型,比如 Object obj和Object Obj是两个对象.然后是对变量赋值,这个基本都一样,可以先声明再赋值, var i; i=0; 也可以声明时赋值, var i=2; 而变量如果你不重新赋值,它是不会改变的,比如 var i=2: var i; 因为i没有重新赋值,所以i还是2.而对于对象变量则比较有意思,不需要向那些java,c

【小白的java成长系列】——java关键字

准备出一个系列的内容啦,今天就从关键字开始说起吧~ 类型 关键字 说明 关键字 说明 访问控制权限 public 公共的,公开的, protected 受保护的,用来修饰属性或方法.只能符合有包内友好关系,或者是父子友好的类才能够访问,即:同层次包底下的可以访问:不能修饰类. private 私有的,用来修饰属性或方法,只能类的内部本身才能够访问,不能修饰类.   其实修饰符还有一种友好的类型 类.方法和变量修饰符 abstract 抽象;可以用来修饰类和方法,被修饰的类不能够实例化(即不能用n

【小白的java成长系列】——Java基础知识

今天来说说java的基础知识,个人感觉都不知道要说啥的,还是为后面的内容做一些铺垫吧~ 今天主要说的都是java面向对象之前的基础知识,比如数据类型呀,表达式运算符呀~等等一系列的知识,下节来说说面向对象.今天这节我就不用程序来说明,直接用文字说明.因为个人感觉真木有啥好说的,这些程序后续都会说到的,比较简单,写写就会了的..好吧~开始了... 1. Java数据类型划分: 基本数据类型:都是一个个具体的值 数值型:表示具体的数字,所有的整数默认情况下都是int,所有的小数都是double型的

RxJava入门系列四,Android中的响应式编程

RxJava入门系列四,Android中的响应式编程 在入门系列1,2,3中,我基本介绍了RxJava是如何使用的.但是作为一名Android开发人员,你怎么让RxJava能为你所用呢?这篇博客我将针对Android开发来介绍一下RxJava的使用场景. RxAndroid RxAndroid是为Android打造的RxJava扩展.通过RxAndroid可以让你的Android开发变得更轻松. 首先,RxAndroid中提供了AndroidSchedulers,你可以用它来切换Android线