`
yeshaoting
  • 浏览: 684740 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

标识符另类应用

    博客分类:
  • J2SE
阅读更多

java语言中的标识符
1) 标识符由字母、数字、下划线“_”、美元符号“$”、人民币符号“¥”(可以

通过ALT + 0165打出)组成,并且首字母不能是数字。
2) 不能把java关键字和保留字作为标识符。
3) 标识符没有长度限制。
4) 标识符对大小写敏感。

 

除了注释,标识符,字符与字符串文字的内容,Java程序中的所有输入元素都只由

ASCII字符形式.ASCII是美国信息交换标准代码.Unicode字符的前128个字符编码是

ASCII字符.

 

标识符: 是不限长度的Unicode字母和数字,以及若干符号组成的序列,序列的第一个

字符必须是非数字.字母和数字可以从整个Unicode字符集中选择,Unicode字符集支

持当今世界上使用的绝大多数书写字母,这允许Java程序员在他们的程序中使用以他

们的母语编写的标识符.

 

测试程序:

/**
 * Copyright (c) 2011 Trusted Software and Mobile Computing(TSMC)
 * All rights reserved.
 * Author: Jarg Yee <yeshaoting@gmail.com>
 * http://jarg.iteye.com/
 */
/*
 * 标识符另类应用
 */
public class 人生选择
{
	private static final String 面包 = "面包";	// one option.
	private static final String 爱情 = "爱情";	// the other option.
	public static void main(String[] args) throws Exception
	{
		System.out.println("漫漫人生路,不期而遇 " + 面包 + " 与 " + 爱情 + ",你会选择那个?");

		String 选择 = System.console().readLine();	// 获取控制台输入,适合1.6及以上版本

		输出("-------------------------------------------------");
		输出("选择:\t" + 选择);
		if(选择.equals(面包))
		{
			输出("你是想吃饱了面包,再找爱情吧?!");
			输出("等你吃饱了,爱情早已走远,在你追也追不及的空间.");
		}
		else if(选择.equals(爱情))
		{
			输出("爱情是精神面包,你总是得画饼充饥.");
			输出("没了面包,在爱情没结束前,你早就饿死了.");
		}
		else
		{
			输出("鱼与熊掌不可兼得,爱情与面包亦是如此.");
			输出("别指望爱人每天给你带面包(除非她在面包店上班^_^).");
			输出("别指望开面包店会等到爱情(除非你开的是蛋糕店^_^).");
		}
	}

	/** 结果输出 */
	private static void 输出(Object 值)
	{
		System.out.println(值);
	}
}

 

 

 


由C语言留下的标识符书写定势,容易让人以为标识符不可以含有中文字符.Unicode

字符包含中文字符.最期Unicode字符都用二个字节进行编码,所以支持用二个字节

编码的中文字符以及标识符.
(扩展知识: 中文字符在Java语言中可以存储在char类型变量中,但是在C语言中则只

能存储在char数组或string变量中.)

 

输出结果:



 

参考资料:
百度百科 词条:标识符
Java虚拟机规范

  • 大小: 51.4 KB
分享到:
评论
2 楼 yeshaoting 2011-04-28  
sd6733531 写道
新一代的语言都以UTF8为标准。
但是奇怪的是Java对于UTF8的处理有奇妙的地方
假设i=/u0001 n=/u0002 t=/u0003
那么
/u0001/u0002/u0002 a=1;
是等价于 int a=1的


除了注释,标识符,字符与字符串文字的内容,Java程序中的所有关键字都是ASCII字符形式.
Java语言中,关键字内部是用ASCII编码的,并非UTF-8.
所以我觉得/u0001/u0002/u0002 a=1; 并不等价于 int a=1
1 楼 sd6733531 2011-04-28  
新一代的语言都以UTF8为标准。
但是奇怪的是Java对于UTF8的处理有奇妙的地方
假设i=/u0001 n=/u0002 t=/u0003
那么
/u0001/u0002/u0002 a=1;
是等价于 int a=1的

相关推荐

    识别标识符_标识符_PL/0_zooh8z_

    在这里,我们将深入探讨标识符的定义、规则以及它们在PL/0和C++中的应用。 首先,让我们理解什么是标识符。标识符是编程语言中用于给变量、常量、函数、类等编程实体命名的字符串。它们必须遵循特定的语法规则,...

    A Trace macro which traces on a new console of the Windows’

    在编程中,宏是一种预处理器指令,它允许程序员定义一个简短的标识符(宏名),在编译时用指定的代码替换这个标识符。宏在调试和日志记录方面特别有用,因为它们可以在不改变程序主体的情况下,轻松地开关调试信息的...

    sqlserver另类非递归的无限级分类(存储过程版)

    - `CategoryID`:分类的唯一标识符。 - `CategoryName`:分类的名称。 - `Depth`:表示分类的层级深度。 2. **分类关系表(tomi_CategoryBind)**: - `CategoryID`:当前分类ID。 - `BindCategoryID`:绑定的父...

    梦之聊天室 v1.2 Build 0518

    【标签】中的“另类其它”可能指的是这款聊天室软件具有不同于传统社交应用的特色功能或设计。"控件"可能指的是应用程序界面中的各种交互元素,如按钮、输入框等,这些都是用编程语言和UI库(如JavaFX、Qt、WinForms...

    读取硬盘ID号

    3. **UUID**:UUID是一种全局唯一的标识符,广泛应用于文件系统、网络服务等领域。在Linux系统中,UUID用于识别分区,而不是整个硬盘。可以使用`blkid`命令来获取所有分区的UUID,或者针对特定设备如`udevinfo -a -n...

    windows文件夹图标伪装.docx

    #### 三、“上帝模式”的另类应用——文件夹加密 除了提供快速访问系统的途径外,“上帝模式”还可以用于文件夹加密,实现文件的隐藏和保护。 ##### 加密步骤: 1. **按照上述步骤创建“上帝模式”文件夹**。 2. *...

    影视在线asp mx1.2

    5324movie可能是一个版本号或者是项目内部的标识符,用来区分不同的构建或更新。 在这个系统中,我们可以预期以下几个关键知识点: 1. **ASP编程**:了解ASP的基础语法和结构,包括服务器端的变量、控件、内置对象...

    USB ID‘s

    标题 "USB ID’s" 指的是一个与USB设备识别相关的资源集合,它包含了不同USB设备的唯一标识符。在计算机领域,USB(通用串行总线)是连接外部设备的一种标准接口,如键盘、鼠标、打印机、移动存储设备等。每个USB...

    The library that helps to manage Shell ITEMIDLISTS(5KB)

    这些ID列表在内存中存储为一系列的项标识符,每个项标识符代表路径中的一个层级。管理这些ID列表对于开发与Windows壳层交互的应用程序至关重要,例如实现自定义的文件浏览器或上下文菜单。 PxShlAPI是一个开源库,...

    网站通用草稿自动保存系统SipoAutoSaver v2.6

    此外,【标签】中提到的“另类其它”可能指的是该系统可以应用于各种类型的网站,而不仅仅是传统的博客或文章编辑平台。它具有广泛的适应性,无论是电子商务网站的商品详情编辑,还是论坛的帖子编辑,都能提供草稿...

    php另类上传图片的方法(PHP用Socket上传图片)

    5. 发送结束标识符`'over'`到服务器端,通知文件上传完毕。 客户端同样有一些关键函数需要注意: - `fsockopen()`: 打开到服务器的Socket连接。 - `fwrite()`: 向Socket写入数据。 - `file_get_contents()`: 读取...

    使用ejb2.0 ql教程代码

    - 确保EJB QL查询遵循Java标识符规则,因为它们实际上是Java方法名的一部分。 - 性能优化:避免在WHERE子句中使用过多的属性,这可能会导致全表扫描,降低查询性能。 在这个教程中,"使用ejb2.0 ql教程代码(cmp...

    易语言获取QQ秀与昵称-易语言

    在这个案例中,我们有两个关键文件:`另类途径获取QQ秀与昵称.e` 和 `彗星HTTP应用模块.ec`。`另类途径获取QQ秀与昵称.e` 很可能是易语言的源代码文件,其中包含了获取这些信息的具体实现。`彗星HTTP应用模块.ec` 则...

    BO全自动智能建站系统

    它会接收文章ID或其他标识符,并根据这些信息从数据库中提取并显示相应的内容。 `Result.asp`可能是一个搜索结果页面,用于呈现用户在网站内执行搜索后得到的结果。这个页面可能包含了展示查询结果、排序和过滤功能...

    Convert message ID to a string将消息标志符转换成字符串(4KB)

    VC++是微软提供的一个强大的C++集成开发环境,广泛用于Windows应用开发。在这个文件中,可能包含了如何在VC++环境中实现消息ID到字符串转换的具体步骤和示例代码。 转换过程通常包括以下几个步骤: 1. **获取消息...

    再再论指针

    #### 六、“另类”数组 在C语言中,还可以创建一些特殊的数组形式,例如不完全数组或变长数组。 **不完全数组**: - 不指定数组大小的数组。 - 常用于函数参数,允许接收可变长度的数组。 - 示例:`void func(int...

    再再论指针 pdf格式 电子书 下载

    尽管在很多情况下,数组名的行为类似于指针,但实际上,数组名是一个特殊的标识符,用于表示整个数组的第一个元素的地址。 #### 三、指针与数组的关系 在C语言中,数组与指针有着密切的联系,但二者之间存在本质的...

    超酷进度条

    在【压缩包子文件的文件名称列表】中,只有一个数字"2003112112405564570",这可能是文件的唯一标识符,但没有具体的文件扩展名,因此无法直接确定文件类型。不过,根据上下文,这个文件可能是一个源代码文件(如.js...

    企业员工手机号码查询

    用户可以通过输入员工姓名、ID或其他标识符进行查询。 3. **后端开发**:后端负责处理前端请求,与数据库交互并返回结果。常见的后端语言有Java(Spring Boot)、Python(Django或Flask)、Node.js(Express)等。...

    取硬盘的逻辑id

    卷序列号是分配给磁盘卷的一个唯一数字,它可以被视为该卷的标识符。卷序列号通常用于跟踪物理磁盘上的特定卷,即使卷上的文件系统或文件发生变化,卷序列号也不会改变。 #### 3. 文件系统 文件系统是用于组织和...

Global site tag (gtag.js) - Google Analytics