廖雪峰Java1-2程序基础-8字符和字符串
1.字符类型char
- char是基本的数据类型
- char:保存一个字符,如英文字符、中文字符。
- Java使用unicode表示字符,可以将char赋值给int类型,查看字符对应的unicode编码。
- 使用16进制的unicode编码定义字符
char c1 = 'A';
char c2 = '中';
int n1 = c1;//65
int n2 = c2;//20013
System.out.println(n1+"\t"+n2);
System.out.println(Integer.toHexString(n1)+"\t"+Integer.toHexString(n2));
//注意是16进制
char c3 = '\u0041';
char c4 = '\u4e2d';
System.out.println(c3+"\t"+c4);

2.字符串类型
2.1字符串定义
定义字符串:String name;
- 字符串类型是引用类型
- 字符串类型用双引号表示,但内容不包括双引号
- 转译字符\
- 常见转译字符:\n " \r \t \
String s1 = "ABC";//3
String s2 = "中文str";//5
String s3 = "Hello\n";//6
String s4 = "\"Hello\"";//7
System.out.println(s1.length());
System.out.println(s2.length());
System.out.println(s3.length());
System.out.println(s4.length());

2.2字符串操作
- 字符串连接用+
- 可以连接字符串和其他数据类型字符串
String s= "hello";
System.out.println(s);
String h = "hello, "+ "world!";
System.out.println(h);
String a = "age is "+ 12;
System.out.println(a);

2.3字符串是引用类型
- 字符串不是基本类型
- 字符串是引用类型
- 字符串不可变
引用类型是变量指向某个对象,而不是持有某个对象。
'''#java
String s= "hello";
String t = s;
s = "world!";
System.out.println(s);
System.out.println(t);
Intellij单步执行
<img src="https://img2018.cnblogs.com/blog/1418970/201901/1418970-20190109213211216-752206661.jpg" width="500" />
# 3.空值
所有的引用类型都可以指向空值null,即不指向任何对象。
空字符串和空值不一样
```#java
String a = null;
String b = "";
System.out.println("a:"+a);
System.out.println("b:"+b);

4.总结:
- 区分字符类型(基本类型)和字符串类型(引用类型)
- 基本类型的变量是持有某个数值
- 引用类型的变量是指向某个数值
- 引用类型的变量可以是null
- 区分空值(null)和空字符串("")
廖雪峰Java1-2程序基础-8字符和字符串的更多相关文章
- 【python】廖雪峰python教程学习--基础
No1: 目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的 No2: 用r''表示''内部的字符串默认不转义 No3: 以'''开头,敲回车可以换行 No4: 布尔 ...
- 廖雪峰Java6IO编程-1IO基础-1IO简介
1.IO简介 IO是指Input/Output,即输入和输出: Input指从外部读取数据到内存,例如从磁盘读取,从网络读取. * 为什么要把数据读到内存才能处理这些数据呢? * 因为代码是在内存中运 ...
- 廖雪峰Java2面向对象编程-6Java核心类-1字符串和编码
Java的字符串用String表示 1.String特点: 可以直接使用"..."表示一个字符串,不强制使用new String 内容不可变 String s1 = "h ...
- Julia基础语法字符和字符串
1.Julia字符串 2.字符
- C/C++程序基础 (四)字符串
字符串与数字转化 数字转换字符串:itoa, ltoa, ultoa ; gcvt, ecvt, fcvt 字符串转数字:atoi, atof(双精度浮点), atol:strtod(双精度浮点), ...
- 字符和字符串在Java中的旅程
以下是个人对java中字符和字符串的见解,如有疏漏之处,还请不吝赐教. 下面通过一个简单的程序来说明字符和字符串在Java中的旅程. 以字符 ' 中 '为例, 它的GBK编码是2个字节:0xd6d0, ...
- phython廖雪峰
这是小白的Python新手教程,具有如下特点: 中文,免费,零起点,完整示例,基于最新的Python 3版本. Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学 ...
- 【js】【读书笔记】廖雪峰的js教程读书笔记
最近在看廖雪峰的js教程,重温了下js基础,记下一些笔记,好记性不如烂笔头嘛 编写代码尽量使用严格模式 use strict JavaScript引擎是一个事件驱动的执行引擎,代码总是以单线程执行 执 ...
- python语言特性-------python2.7教程学习【廖雪峰版】(一)
开始学习廖雪峰的py2.7教程: 2017年6月5日12:54:28 笔记: 廖雪峰python2.7教程1.用任何编程语言来开发程序,都是为了让计算机干活. 2.Python是一种相当高级的语言. ...
随机推荐
- ORACLE telnet 1521 不通及ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务的解决
服务器上安装了oracle11g , 防火墙上已经增加1521 入站规则.但是内网客户端配置好了TNS无法连接.telnet 1521 不通. 需要在服务器上\product\10.2.0\db_1\ ...
- Windows XP系统服役13年今正式退休
清明已过,服役13年的微软Windows XP系统也于今日正式“退休”.尽管这之后XP系统仍可以继续使用,但微软不再提供官方服务支持.对于中国数以亿计的XP用户来说,一方面是对已经使用了13年的操作系 ...
- Android中Parcel的分析以及使用
简单点来说:Parcel就是一个存放读取数据的容器, Android系统中的binder进程间通信(IPC)就使用了Parcel类来进行客户端与服务端数据的交互,而且AIDL的数据也是通过Parcel ...
- bug生命周期和bug状态处理
首先,测试人员发现 BUG ,做好记录并上报至 BUG 数据库.接着,开发组长或经理确定该 BUG 是否有效 之后指定 BUG 的优先级并安排给相关开发人员.否则拒绝该 BUG 的修复. 然后,该 B ...
- vue2.*初体验
一. 推荐开发环境 二. 安装环境 安装 nvm :curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.3/install. ...
- Gradle 下载不了
可自行下载对应的 gradle-x.x-all.zip 放在下列目录 C:\Users\penno\.gradle\wrapper\dists\gradle-4.4-all\9br9xq1tocpiv ...
- 【opencv基础】pointPolygonTest
pointPolygonTest opencv函数 pointPolygonTest: C++: double pointPolygonTest(InputArray contour, Point2f ...
- URAL - 1397:Points Game (博弈,贪心)
Two students are playing the following game. There are 2· n points on the plane, given with their co ...
- 牛客多校第五场 J:Plan
链接:https://www.nowcoder.com/acm/contest/143/J 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- C#浮点数保留位数
C#浮点数保留位数 这里用String.Forma("{0:F}",x);来解决. 下面是试验和截图 using System; using System.Collections. ...