廖雪峰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是一种相当高级的语言. ...
随机推荐
- L1-021 重要的话说三遍
这道超级简单的题目没有任何输入. 你只需要把这句很重要的话 —— “I'm gonna WIN!”——连续输出三遍就可以了. 注意每遍占一行,除了每行的回车不能有任何多余字符. 输入样例: 无 输出样 ...
- ASP.NET下跨应用共享Session和使用Redis进行Session托管
在之前的博客中,我说到了Session的共享问题,其中说到了Web Farm和Web Garden两种情况下Session的处理.在ASP.NET提供的Session处理方法中,有以下四种模式: 1. ...
- js push ,pop ,concat ,join方法
push 方法 将新元素添加到一个数组中,并返回数组的新长度值. arrayObj.push([item1 [item2[. . . [itemN ]]]]) 说明 push 方法将以新元素出现的顺序 ...
- php 递归调用又一种方法
public static function encodeXml($data){ $attr = $xml = ""; foreach($data a ...
- 安装 Java 6
从服务器下载 Linux 64位 jdk 到本地.下载地址:\\192.167.100.225\share\Tool\JAVA\jdk-6u34-linux-x64.bin 给安装文件添加执行权限 $ ...
- sql,用 ISNULL(), NVL(), IFNULL() and COALESCE() 函数替换空值
在数据库操作中,往往要对一些查询出来的空值进行替换,如函数SUM(),这个函数如果没有值会返回NULL,这是我们不希望看到的, 在MySQL中我们可以这样来写: ) ... 在SQLSERVER中我们 ...
- C templet and switch case with serial number
/************************************************************************** * C templet and switch c ...
- opencv-python教程学习系列8-opencv图像算术运算
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的算术运算,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...
- Mac OS 基于 VirtualEnv 的安装 tensorflow 1.3.0
如果不行的话,就用conda装吧 https://www.jianshu.com/p/d54546ab315e 推荐使用 virtualenv 创建一个隔离的容器, 来安装 TensorFlow. 这 ...
- CTF之LSB信息隐藏术
LSB也就是最低有效位,原理是图片中的像素一般是由三种颜色构成,即三原色(绿红蓝),由这三种颜色可以组成其它各种颜色. 例如在PNG图片的储存中,每个颜色会有8bit,LSB隐写就是修改了像素中的最低 ...