区别一:字符常量用单引号引起的一个字符,而字符串常量是双引号引起的多个字符

public class Demo {/*字符常量:1.数据类型是char,属于基本数据类型2.使用单引号引用3.只能是一个字符,如果是多个字符,会报编译错误:Too many characters in character literal4.可以是中文字符*/private static final char c = 'a';/*字符串常量:1.数据类型是String,属于引用数据类型,不属于基本数据类型中的一种2.使用双引号引用3.可以是一个字符,但更多情况下,是多个字符*/private static final String str = "abc";public static void main(String[] args) {System.out.println(c);System.out.println(str);}
}
/*** 打印结果:* a* abc*/

区别二:字符常量相当于一个整型值(ASCII值),可以参与运算;而字符串常量是一个地址值,代表该字符串在内存中存放的位置。

public class Demo {/*字符常量:1.字符常量可以参与运算,运算时作为整型值进行运算的2.通过(int)可以将一个字符常量或变量强制转型为int类型,输出的就是ASCII对应的十进制值3.也可以通过一个(char)将一个整型常量或变量强制转型为char类型,输出的就是ASCII对应的字符*/private static final char c = 'a';/*字符串常量1.字符串常量表示的是在内存中的一个地址值2.字符串加上一个整型值,结果是字符串相连,而不是相加运算*/private static final String str = "abc";public static void main(String[] args) {System.out.println(c);System.out.println((int) c);System.out.println(c + 1);System.out.println((char) (c + 1));System.out.println(str);System.out.println(str + 1);}
}
/*** 打印结果:* a* 97* 98* b* abc* abc1*/

下面是来源于百度百科的ASCII码表,可以看到对应的十进制97对应字符'a'。

区别三:字符常量只占据2个字节,这是Java规定的,而字符串常量占若干个字节,到底是多少个,由字符串里面的字符个数决定。

public class Demo {/*字符常量:1.可以通过 包装类型.BYTES 获取各个基本数据类型的字节数2.char的包装类型是Character,它是2个字节*/private static final char c = 'a';/*字符串常量:1.字符串属于引用数据类型,而且字节数由里面具体有多少个字符决定的*/private static final String str1 = "a";private static final String str2 = "abc";public static void main(String[] args) {System.out.println(Character.BYTES);System.out.println(str1.getBytes().length);System.out.println(str2.getBytes().length);}
}
/*** 打印结果:* 2* 1* 3*/

Java面试之Java基础3——字符型常量与字符串常量的区别相关推荐

  1. Java面试之语言基础

    文章目录 Java八种基本数据类型 Java三大基础特性 面向对象和面向过程的区别 面向过程 面向对象 Java与C++对比 Java8 新特性 Java反射机制 Java异常机制 Throwable ...

  2. [Java面试三]JavaWeb基础知识总结.

    [Java面试三]JavaWeb基础知识总结. 1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Int ...

  3. very very good,Java面试宝典+Java核心知识集

    这几天刚整理出炉的两份最全"Java面试宝典+Java核心知识集"(very very good!!!),因此有了今天咱这篇文章,没错,我又来分享干货了!!! Java面试宝典 说 ...

  4. 字符型常量和字符串常量的区别

    1. 字符型常量和字符串常量的区别 形式上: 字符常量是单引号引起的一个字符 字符串常量是双引号引起的若干个字符 含义上: 字符常量相当于一个整形值(ASCII值),可以参加表达式运算 字符串常量代表 ...

  5. Java中几种常量池(字符串常量池, Class常量池, 运行时常量池)的区别与联系

    简介: 这几天在看Java虚拟机方面的知识时,看到了有几种不同常量池的说法,然后我就去CSDN.博客园等上找资料,里面说的内容真是百花齐放,各自争艳,因此,我好好整理了一下,将我自认为对的理解写下来与 ...

  6. 字符型常量与字符串常量的深度解析

    字符常量是指用一对单引号括起来的一个字符.如'a','9','!'.一般作为整型数据来进行运算. 详解与比较: 字符常量:在C语言中一个字符常量代表ASCII字符集中的一个字符,在程序中用单引号把一个 ...

  7. 字符型数据和字符串常量

    字符型数据是计算机中用来表示英文字母.符号.汉字的数据.字符型数据只占用1个字节(8位)的内存单元. 字符型常量 用单引号括起来的一个直接输入的字符.例如,'A'.'a'.'3'.'+'等都是合法的字 ...

  8. java面试必知--基础

    1 / 66 Java 基础知识总结 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的 j ...

  9. java面试之Java基础

    Java的数据类型: 包括基本数据类型和引用数据类型: a.基本数据类型: 整数类型{long, int, short, byte}; 浮点类型: float, double; 字符类型: char; ...

最新文章

  1. Makefile:自动化变量 $@,$^,$<,$?
  2. windows7 下vmware workstation 12安装Ubuntu16.04虚拟机及安装和共享文件夹
  3. Spark Structure Streaming(一)之简介
  4. Hibernate单表开发步骤
  5. 微服务 数据库耦合_mysql – 与其他服务共享的微服务数据库
  6. No Thumbnails for Custom Picture Library Definition
  7. elementUI中登录页form表单重复跳转登陆页
  8. python单例模式数据库连接池_Python单例模式的实现
  9. javascript实现简单的新消息语音提醒功能
  10. 关于cesium1.92以上版本无法加载draco压缩模型问题
  11. Kubernetes运维之使用Prometheus全方位监控K8S
  12. LWN:滚动发布的稳定版内核!
  13. golang runtime.Caller 学习笔记
  14. 【渝粤教育】国家开放大学2018年春季 0553-21T色彩 参考试题
  15. 解析approvalFlow——仿钉钉后台审批流程
  16. 透视HTTP协议(一) —— HTTP是什么
  17. 笔记本电脑换加内存条与加固态硬盘详细介绍
  18. [转载]华为老员工看华为(一):不断改进的海外市场
  19. 多项式除法的实现(附c代码)
  20. APP测试面试题汇总基础+进阶

热门文章

  1. 移动终端处理器构成和基带芯片概述
  2. seqkit根据基因id_fasta/fq文件处理万能工具——Seqkit学习记录
  3. 传感器数据处理Ⅰ------常用里程计模型
  4. 二代身份证的尺寸大小
  5. 技术开发项目收获了什么_惊呼!克州拼拼优米有什么优势
  6. java开发周报_java第六周周报
  7. Ubuntu 系统设置为中文
  8. 知识付费社群运营怎么做?
  9. SOME/IP TP
  10. 无线射频专题《射频合规,2.4GHz WIFI信道分布与国家限制》