Java 字符与字符串
字符
// 定义字符
char c1 = 'a';
char c2 = '1';
char c3 = '中';
// 自动装箱
Character c = c1;
// 自动拆箱
c1 = c;
//判断是否为字母
Character.isLetter('a');
//判断是否为数字
Character.isDigit('a');
//判断是否空白
Character.isWhitespace(' ');
//判断是否大写
Character.isUpperCase('a');
//判断是否小写
Character.isLowerCase('a');
//转换为大写
Character.toUpperCase('a');
//转换为小写
Character.toLowerCase('A');
//转换为字符串
String str = Character.toString('a');
转义字符
// 使用 \t 制表符对齐输出内容
System.out.println("abc\tdef");
System.out.println("a\tdef");
// 一个 \t 制表符显示长度是8
System.out.println("12345678def");
// 换行符 \n
System.out.println("abc\ndef");
// 单引号 \'
System.out.println("abc\'def");
// 单引号 \"
System.out.println("abc\"def");
// 反斜杠 \\
System.out.println("abc\\def");
字符串
字符串即字符的组合,具有以下特性:
- String 本身是一个类,创建字符串后得到的是一个对象
- String 使用final修饰,不能被继承
- String 创建后不可改变,如增减长度、插入删除字符、修改字符等
创建字符串
// 通过字面值创建字符串
String str ="字符串";
// 通过实例化创建字符串
String str = new String("字符串");
// 通过字符数组创建字符串
char[] cs = new char[]{'字','符','串'};
String str = new String(cs);
// 通过+加号创建字符串
String str = str1 + str2;
字符串格式化
String str1 ="捡到了";
int num = 80;
String str2="元";
//方式1:拼接字符串
String sentence = str1 + num + str2 + "\n";
//方式2:使用 format 格式化输出
//%s表示字符串,%d表示数字,%n表示换行
String sentence = String.format("%s%d%s%n", str1, num, str2);
其他格式化输出
int year = 2020;
String.format("%d%n", year);
//8位长度,前补空格
String.format("%8d%n",year);
//8位长度,后补空格
String.format("%-8d%n",year);
//8位长度,前补0
String.format("%08d%n",year);
//千位位分隔符
String.format("%,8d%n",year*10000);
//保留两位小数
String.format("%.2f%n",Math.PI);
//不同国家的千位分隔符
String.format(Locale.FRANCE,"%,.2f%n",Math.PI*10000);
String.format(Locale.US,"%,.2f%n",Math.PI*10000);
String.format(Locale.UK,"%,.2f%n",Math.PI*10000);
字符串长度
String name ="字符串";
System.out.println(name.length());
String name = "";
System.out.println(name.length());
字符串操作
String name ="字,符,串";
// 获取指定位置的字符
char c = name.charAt(0);
// 获取对应的字符数组
char[] cs = name.toCharArray();
// 从第3个字符开始截取字符串
String subString1 = name.substring(3);
// 从第3个字符开始到5-1的位置截取字符串
String subString2 = name.substring(3,5);
// 根据,进行分割,得到3个子字符串
String subSentences[] = name.split(",");
for (String sub : subSentences) {
System.out.println(sub);
}
// 去掉首尾空格
String trimName = name.trim();
// 全部变成小写
String lowerName = name.toLowerCase();
// 全部变成大写
String upperName = name.toUpperCase();
// 字符第一次出现的位置
int index = name.indexOf('符');
// 字符串第一次出现的位置
int index = name.indexOf(",串");
// 字符串最后出现的位置
int index = name.lastIndexOf("符");
// 从位置2开始,'串'第一次出现的位置
int index = name.indexOf('串', 5);
// 是否包含字符串
int index = name.contains("符");
// 替换所有的字符串
String replace = name.replaceAll(",", "-");
// 只替换第一个字符串
String replace = name.replaceFirst("-", "");
比较字符串
String str1 = "the light";
String str2 = "the light";
String str3 = new String(str1);
String str4 = str1.toUpperCase();
//==用于判断是否是同一个字符串对象
System.out.println(str1 == str2); // true,同一对象
System.out.println(str1 == str3); // false,不同对象
System.out.println(str1.equals(str3)); // true,内容一样
System.out.println(str1.equals(str4)); // false,大小写不一样
System.out.println(str1.equalsIgnoreCase(str3)); //true,忽略大小写的比较
// 以...开始
System.out.println(str1.startsWith("the"));
// 以...结束
System.out.println(str1.endsWith("light"));
数字转字符串
//方式1
int i = 5;
String str = String.valueOf(i);
//方式2
int i = 5;
Integer it = i;
String str = it.toString();
换行符说明
换行符(newline):另起一行;程序表示为:'\n'
回车符(return):回到一行的开头;程序表示为:'\r'
在IDE里敲一个回车,实际上是回车换行符。
不同的操作系统,换行符不同。java程序中可以使用%n兼容各个平台的换行表现。
- 在DOS和Windows中,每行结尾是 “\r\n”;
- Linux系统里,每行结尾只有 “\n”;
- Mac系统里,每行结尾是只有 "\r"。
Java 字符与字符串的更多相关文章
- 大头儿子和小头爸爸的战斗--java字符和字符串
故事背景 一座普普通通的小屋里,住着大头儿子.小头爸爸和围裙妈妈.在他们普普通通的生活中,总是响起充满欢乐的笑声.最温暖的家又成了他们每个人的爱的源泉. <大头儿子和小头爸爸>是孩子居首( ...
- java字符统计+字符串压缩
要实习了.突然发现自己好像什么都不会,就去看看题吧.在网上看到一个字符串压缩的题.看了一眼,感觉用python很简单.一个for循环+字典就可以搞定. 但是呢,主要还是java.下面就用java来实现 ...
- java字符,字符串,数字之间的转换
string 和int之间的转换 string转换成int :Integer.valueOf("12") int转换成string : String.valueOf(12) ch ...
- Core Java 总结(字符和字符串类问题)
所有代码均在本地编译运行测试,环境为 Windows7 32位机器 + eclipse Mars.2 Release (4.5.2) 2016-10-17 整理 字符,字符串类问题 正则表达式问题 J ...
- Java语言程序设计(基础篇) 第四章 数学函数、字符和字符串
第四章 数学函数.字符和字符串 4.2 常用数学函数 方法分三类:三角函数方法(trigonometric method).指数函数方法(exponent method)和服务方法(service m ...
- Java的整个字符串的结束索引在最后一个字符之外
/** * Created by xfyou on 2016/11/4. */ public class SubstringDemo { public static void main(String[ ...
- java.sql.Exception:setString 只能处理少于 32766 个字符的字符串
java.sql.Exception:setString 只能处理少于 32766 个字符的字符串 解决方式是 : 升级ojdbc的版本, 将原来的 ojdbc14_10.2.0.2.0.jar ...
- Android(Java) 字符串的常用操作,获取指定字符出现的次数,根据指定字符截取字符串
/*这是第100000份数据,要截取出100000*/ String s="这是第100000份数据"; String s1 = s.substring(s.indexOf(&qu ...
- 字符和字符串在Java中的旅程
以下是个人对java中字符和字符串的见解,如有疏漏之处,还请不吝赐教. 下面通过一个简单的程序来说明字符和字符串在Java中的旅程. 以字符 ' 中 '为例, 它的GBK编码是2个字节:0xd6d0, ...
随机推荐
- 【Linux】【Services】【NetFileSystem】Samba
1. 简介 1.1. 背景:case is initiative by 某windows无良人事,需求是需要一整块4T的硬盘,由于ESXi5最大支持一块盘是2T大小,而且不可以使用windows动态卷 ...
- Redis - 2 - 聊聊Redis的RDB和AOF持久化 - 更新完毕
1.RDB 1.1).RDB是什么? RDB,全称Redis Database RDB是Redis进行持久化的一种方式,当然:Redis默认的持久化方式也是RDB 1.2).Redis配置RDB 1. ...
- java 注解的几大作用及使用方法详解
初学者可以这样理解注解:想像代码具有生命,注解就是对于代码中某些鲜活个体的贴上去的一张标签.简化来讲,注解如同一张标签. 在未开始学习任何注解具体语法而言,你可以把注解看成一张标签.这有助于你快速地理 ...
- PostgreSql数据库安全加固
1.确保通过"主机" TCP / IP套接字登录已正确配置 描述 大量的身份验证方法可用于使用 TCP / IP套接字,包括: ?信任 ? 拒绝 ?md5 ?scram-sha-2 ...
- java多线程6:ReentrantLock
下面看下JUC包下的一大并发神器ReentrantLock,是一个可重入的互斥锁,具有比synchronized更为强大的功能. ReentrantLock基本用法 先来看一下ReentrantLoc ...
- HCNP Routing&Switching之组播技术-组播协议IGMP
前文我们了解了组播地址相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15616740.html:今天我们来聊一聊组播协议中IGMP协议相关话题: 组播 ...
- picoctf_2018_rop chain
拿到题目就知道要用rop来做 老样子日常检查一下 32位的程序开启了nx和relro保护 将程序放入ida中 一眼就看到了程序中的后门程序 我们逐一分析一下 main vuln get没有对输入字符进 ...
- [BUUCTF]REVERSE——[MRCTF2020]Transform
[MRCTF2020]Transform 附件 步骤: 例行检查,64位程序,无壳 64位ida载入,找到关键函数 一开始让我们输入一个长度为33位的字符串,之后使用数组dword_40F040打乱了 ...
- png crc讲解
我太难了. 我真的是为你们着想,你们学姐说misc太简单了,可就是这么简单我相信你们也不会做...我还得给你们讲解... 加油吧!!! 工具:010editor 这个我想给你放下载链接来着,后来 ...
- 万字长文入门 Redis 命令、事务、锁、订阅、性能测试
作者:痴者工良 Redis 基本数据类型 Redis 中,常用的数据类型有以下几种: String:字符串类型,二进制安全字符串: Hash:哈希表: List 列表:链表结构,按照插入顺序排序的字符 ...