程序语言的分析分词法和语法两部分。词法分析主要用的是正规文法,也就是三型文法。这类文法主要采用正则表达式分析。正则文法分析器的特点是它是不回溯的,所以实现很简单。如果一个变量以数字开头,那么分析器就必须在遇到第一个或第二个英文字符的时候回溯来确定是否是数字、变量名还是词法错误,这时候就变成了二型文法。二型文法分析器的好处是支持回溯和递归语法(所以语法分析是靠它的),但是缺点是状态机相比正则文法状态大大增加,而且代码写起来更困难。考虑到词法分析部分只是用来断字,我们实在是没有为了支持变量名以数字开头这么一个小功能而让整个词法分析部分用二型文法写。

故,最后大家都默认了变量要避免用数字开头。

java变量命名规则

环境变量通常是指在操作系统中,用来指定操作系统运行时需要的一些参数

变量名以字母、下划线或者美元符(4上面的¥)开头,不能以数字开头,后面跟字母、下划线、美元符、数字,变量名对大小写敏感,无长度限制

驼峰命名法:

1.变量名应该用有意义的英文单词

2.变量名如果只有一个单词,则所有的字母小写

3.变量名如果由多个英文单词组成,则从第二个单词开始首字母大写

4.在java中bool值用boolean表示,只有true和false两种,不能用0和非0,或空和非空表示,如下图,这里的意思是第三行出错,不能把int型变量赋值给boolean型变量

5.java使用unicode字符码,意味着可以在java里面使用世界上的任意一种语言的字符集,用一个char类型变量可以存储一个汉字,即一个中文字符和英文字符所用的存储空间是一样的

6.乱码的出现:用a字符集将汉字转换为编码,但系统用b字符集将编码转换为汉字时,将出现找不到编码,出现乱码

java类名不能以数字开头_java变量为什么不能以数字开头相关推荐

  1. java可以用数字开头做变量吗_java变量为什么不能以数字开头

    程序语言的分析分词法和语法两部分.词法分析主要用的是正规文法,也就是三型文法.这类文法主要采用正则表达式分析.正则文法分析器的特点是它是不回溯的,所以实现很简单.如果一个变量以数字开头,那么分析器就必 ...

  2. python变量名必须以什么开头_python变量为什么不能以数字开头

    任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在. Python变量命名规则(推荐学习:Python视频教程) 变量名只能包含字母.数字和下划线.变量名可以字母或下划线开头,但不能以 ...

  3. php判断一个字符串是否为纯数字,php判断变量是否为纯数字字符串的方法

    在php中有时候需要判断一个变量的值是否为数字或是否为数字字符串,而php中也提供了一个很好用的内置函数 is_numeric(),可以很轻松的来检测变量. php is_numeric() 函数介绍 ...

  4. python为什么不能以数字开头_python变量为什么不能以数字开头

    任何事情只要有人规定成文了,必定有其原因所在,也就是有其合理性所在. Python变量命名规则(推荐学习:Python视频教程) 变量名只能包含字母.数字和下划线.变量名可以字母或下划线开头,但不能以 ...

  5. java 一千万数字排序_java 输入任意几个数字,怎样将他们从大到小排序?

    展开全部 public static void main(String[] args) { Scanner scan = new Scanner(System.in).e68a84e8a2ad3231 ...

  6. java中自定义输入数字格式_Java 创建并使用自定义数字格式、35;###、####.#####和语言环境...

    import java.util.*; import java.text.*; /* nowjava - 时代Java 提 供 */ public class DecimalFormatDemo { ...

  7. java类名变量_java类名操作变量方法

    JAVA中包括成员变量的定义和方法的定义,而成员变量的定义又包括类变量和实例变量的定义:其中用static 修饰的是类变量,而其他是实例变量. 实例变量和类变量的区别:一个类通过使用new 运算符可以 ...

  8. Java类名.方法和变量

    文章目录 (1) 类名.方法 (2) 变量 (1) 类名.方法 要是类名直接调用的方法,那这个方法就是静态的(static)方法,是不用new出新对象实例就可以直接调用的方法.看下面例子: class ...

  9. java变量数据类型_Java——变量和数据类型

    变量 变量就是一个临时存储数据的空间.那么我们把数据存在内存空间里面,怎么取呢? 举例说明: 我们可以把旅馆的一个个房间看作一个存储空间,把房间的名字"101"看成变量名,把房间类 ...

  10. java能下划线开头_为什么Java7开始在数字中使用下划线

    JDK1.7的发布已经介绍了一些有用的特征,尽管大部分都是一些语法糖,但仍然极大地提高了代码的可读性和质量.其中的一个特征是介绍字面常量数字的下划线.从Java7开始,你就可以在你的Java代码里把长 ...

最新文章

  1. 吴恩达与LG握手合作!
  2. 初探领域驱动设计(1)为复杂业务而生
  3. 互联网+金融+IM的未来,你懂?
  4. 关于将struts2框架下,使自定义过滤器对部分的action(一个action或多个action)请求忽略的方法
  5. equipment header attribute mapping - two settypes in middleware
  6. js pug 代码_pug模版学习(一)
  7. python爬取b站403_Python如何爬取b站热门视频并导入Excel
  8. 软件与软件工程的概念
  9. 会移动的文字(Marquee)
  10. stats | 概率分布与随机数生成(一)——离散型分布
  11. Jenkins构建风格自由的项目
  12. 指向指针的指针与二维数组的区别
  13. Mozilla Apache/Nginx/Lighttpd/HAProxy SSL 配置生成器
  14. C#-----集合ListT的常用方法
  15. ubuntu编辑只读文件_Ubuntu linux vim 修改只读文件 修改Apache2端口号 ports.conf
  16. 不动产登记工作统计难 要靠三维不动产管理系统
  17. 在sublime中如何将html代码格式化!
  18. sudo no tty present and no askpass program specified
  19. 第 5 章 ROS 常用组件 4 —— rosbag / rqt工具箱
  20. Android开发UI新技能,你get这个新技能了吗?(附源码详解)

热门文章

  1. 小米pro15拆机_小米笔记本Pro 15增强版值得买吗 小米笔记本Pro 15增强版拆解+评测...
  2. linux tac命令,Linux tac 命令 command not found tac 命令详解 tac 命令未找到 tac 命令安装 - CommandNotFound ⚡️ 坑否...
  3. Android Studio第一次安装app到夜神模拟器报错
  4. NPN和PNP三极管收录笔记
  5. 北京因地制宜编制村庄规划 着重体现京韵农味
  6. 《哪吒》爆红的背后:你是选择妥协还是逆天改命?
  7. 修身齐家治国平天下的领导者自我管理哲学
  8. IE无法打开网页的解决方法
  9. 融360叶大清:不关注短期股价变化 希望触达三四线城市年轻人
  10. qt跨平台软件开发_Qt on Mobile:跨平台应用程序开发的最佳实践