取出指定索引的字符 —— 使用charAt()方法
public class StringDemo {
public static void main(String args[]) {
String str = "hello"; // 定义字符串对象
char c = str.charAt(0); // 截取第一个字符
System.out.println(c); // 输出字符
}
}
程序执行结果:
h
字符数组与字符串的转换
public class StringDemo {
public static void main(String args[]) {
String str = "hello"; // 定义字符串
char[] data = str.toCharArray(); // 将字符串变为字符数组
for (int x = 0; x < data.length; x++) { // 循环输出每一个字符
System.out.print(data[x] + "、");
}
}
}
程序执行结果: h、e、l、l、o、
将字符串转大写
public class StringDemo {
public static void main(String args[]) {
String str = "hello“; // 字符串由小写字母组成
char[] data = str.toCharArray(); // 将字符串变为字符数组
for (int x = 0; x < data.length; x++) { // 改变每一个字符的编码值
data[x] -= 32;
}
System.out.println(new String(data)); // 将全部字符数组变为String
System.out.println(new String(data, 1, 2)); // 将部分字符数组变为String
}
}
程序执行结果:
HELLO
EL
给定一个字符串,要求判断其是否由数字组成。
public class StringDemo {
public static void main(String args[]) {
String str = "123423432";
if (isNumber(str)) {
System.out.println("字符串由数字组成!");
} else {
System.out.println("字符串由非数字组成!");
}
}
public static boolean isNumber(String temp) {
char[] data = temp.toCharArray();// 将字符串变为字符数组,可以取出每一位字符进行判断
for (int x = 0; x < data.length; x++) {// 循环判断
if (data[x] > '9' || data[x] < '0') {// 不是数字字符范围
return false;// 后续不再判断
}
}
return true; // 如果全部验证通过返回true
}
}
程序执行结果: 字符串由数字组成!
观察字符串与字节数组的转换
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld"; // 定义字符串
byte[] data = str.getBytes(); // 将字符串变为字节数组
for (int x = 0; x < data.length; x++) {
data[x] -= 32; // 将小写字母变为大写形式
}
System.out.println(new String(data)); // 全部转换
System.out.println(new String(data, 5, 5));// 部分转换
}
}
程序执行结果:
HELLOWORLD(“new String(data)”语句执行结果)
WORLD(“new String(data, 5, 5)”语句执行结果)
相等判断
public class StringDemo {
public static void main(String args[]) {
String stra = "Hello"; // 实例化字符串对象
String strb = "hELLO"; // 实例化字符串对象
System.out.println(stra.equals(strb)); // 比较结果:false
System.out.println(stra.equalsIgnoreCase(strb)); // 比较结果:true
}
}
程序执行结果:
false(“stra.equals(strb)”语句执行结果)
true(“stra.equalsIgnoreCase(strb)”语句执行结果)
观察compareTo()方法
public class StringDemo {
public static void main(String args[]) {
String stra = "Hello"; // 定义字符串对象
String strb = "HEllo"; // 定义字符串对象
System.out.println(stra.compareTo(strb)); // 32,大于0
if (stra.compareTo(strb) > 0) {// 可以利用大小等于0的方式来判断大小
System.out.println("大于");
}
}
}
程序执行结果:
32(“stra.compareTo(strb)”语句执行结果,比较的是两个字符串的编码数值)
大于(“System.out.println("大于");”语句执行结果)
使用indexOf()等功能查找
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld"; // 实例化字符串对象
System.out.println(str.indexOf("world")); // 返回满足条件单词的第一个字母的索引
System.out.println(str.indexOf("l")); // 返回的是第一个查找到的子字符串位置
System.out.println(str.indexOf("l", 5)); // 从第6个元素开始查找子字符串位置
System.out.println(str.lastIndexOf("l")); // 从后开始查找指定字符串的位置
}
}
程序执行结果:
5(“System.out.println(str.indexOf("world"));”语句执行结果)
2(“System.out.println(str.indexOf("l"));”语句执行结果)
8(“System.out.println(str.indexOf("l", 5));”语句执行结果)
8(“System.out.println(str.lastIndexOf("l"));”语句执行结果)
利用indexOf()方法判断子字符串是否存在
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld“; // 字符串对象
if (str.indexOf("world") != -1) { // 能找到子字符串
System.out.println("可以查询到数据。");
}
}
}
程序执行结果:
可以查询到数据。
使用contains()方法判断子字符串是否存在
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld“; // 字符串对象
if (str.contains("world")) { // 子字符串存在
System.out.println("可以查询到数据。");
}
}
}
程序执行结果: 可以查询到数据。
开头或结尾判断
public class StringDemo {
public static void main(String args[]) {
String str = "##@@hello**"; // 字符串对象
System.out.println(str.startsWith("##"));// 是否以“##”开头
System.out.println(str.startsWith("@@", 2)); // 从第2个索引开始是否以“@@”开头
System.out.println(str.endsWith("**"));// 是否以“**”结尾
}
}
程序执行结果:
true(“str.startsWith("##")”语句执行结果)
true(“str.startsWith("@@", 2)”语句执行结果)
true(“str.endsWith("**")”语句执行结果)
范例:观察替换的结果
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld" ; // 定义字符串
String resultA = str.replaceAll("l","_") ; // 全部替换
String resultB = str.replaceFirst("l","_") ; // 替换首个
System.out.println(resultA) ;
System.out.println(resultB) ;
}
}
程序执行结果:
he__owor_d(“System.out.println(resultA)”语句执行结果)
he_loworld(“System.out.println(resultB)”语句执行结果)
验证字符串操作
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld"; // 定义字符串
String resultA = str.substring(5); // 从指定索引截取到结尾
String resultB = str.substring(0, 5); // 截取部分子字符串
System.out.println(resultA);
System.out.println(resultB);
}
}
程序执行结果:
world(“System.out.println(resultA)”语句执行结果)
hello(“System.out.println(resultB)”语句执行结果)
进行全部拆分
public class StringDemo {
public static void main(String args[]) {
String str = "hello yootk nihao mldn";// 定义字符串,中间使用空格作为间隔
String result[] = str.split(" "); // 字符串拆分
for (int x = 0; x < result.length; x++) { // 循环输出
System.out.print(result[x] + "、");
}
}
} 程序执行结果:
hello、yootk、nihao、mldn、
拆分为指定的个数
public class StringDemo {
public static void main(String args[]) {
String str = "hello yootk nihao mldn"; // 定义字符串,中间使用空格作为间隔
String result[] = str.split(" ",2); // 字符串拆分
for (int x = 0; x < result.length; x++) { // 循环输出
System.out.println(result[x]);
}
}
}
程序执行结果:
hello
yootk nihao mldn
复杂拆分
public class StringDemo {
public static void main(String args[]) {
String str = "张三:20|李四:21|王五:22“;// 定义字符串
String result[] = str.split("\\|"); // 第一次拆分
for (int x = 0; x < result.length; x++) {
String temp[] = result[x].split(":"); // 第二次拆分
System.out.println("姓名:" + temp[0] + ",年龄:" + temp[1]);
}
}
}
程序执行结果:
姓名:张三,年龄:20
姓名:李四,年龄:21
姓名:王五,年龄:22
字符串连接
public class StringDemo {
public static void main(String args[]) {
String str = "hello".concat("world") ; // 等价于“+”
System.out.println(str) ;
}
}
程序执行结果:
helloworld
范例:转小写与大写操作
public class StringDemo {
public static void main(String args[]) {
String str = "(*(*Hello(*(*" ; // 定义字符串
System.out.println(str.toUpperCase()) ; // 转大写后输出
System.out.println(str.toLowerCase()) ; // 转小写后输出
}
}
程序执行结果:
(*(*HELLO(*(*(“System.out.println(str.toUpperCase())”语句执行结果)
(*(*hello(*(*(“System.out.println(str.toLowerCase())”语句执行结果)
去掉左右空格
public class StringDemo {
public static void main(String args[]) {
String str = " hello world "; // 定义字符串,包含空格
System.out.println("【" + str + "】");// 原始字符串
System.out.println("【" + str.trim() + "】");// 去掉空格后的字符串,中间的空格保留
}
}
程序执行结果:
【 hello world 】
【hello world】
取得字符串长度
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld"; // 定义字符串
System.out.println(str.length());// 取得字符串长度
}
}
程序执行结果:
10
范例:判断是否为空字符串
public class StringDemo {
public static void main(String args[]) {
String str = "helloworld"; // 定义字符串
System.out.println(str.isEmpty()); // 判断字符串对象的内容是否为空字符串(不是null)
System.out.println("".isEmpty()); // 判断字符串常量的内容是否为空字符串(不是null)
}
}
程序执行结果:
false(“System.out.println(str.isEmpty())”语句执行结果)
true(“System.out.println("".isEmpty())”语句执行结果)
实现首字母大写的操作
public class StringDemo {
public static void main(String args[]) {
String str = "yootk"; // 定义字符串
System.out.println(initcap(str));// 调用initcap()方法
}
/**
* 实现首字母大写的操作
* @param temp 要转换的字符串数据
* @return 将首字母大写后返回
*/
public static String initcap(String temp) {
// 利用substring(0,1)取出字符串的第一位而后将其大写,再连接剩余的字符串
return temp.substring(0, 1).toUpperCase() + temp.substring(1);
}
}
程序执行结果:
Yootk

Java基础_0308:String类的常用方法的更多相关文章

  1. Java基础(30):String对象的常用方法与实例(String类)

    Java 中 String 类的常用方法 Ⅰ String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之 ...

  2. Java基础之String类

    String类 字符串是不可变的,对其做的任何改变,会生成一个对象,不会改变有原有对象. ==和equals() String s1 = "good"; String s2 = & ...

  3. Java基础教程——String类

    String类 Java程序中的所有字符串字面值(如 "abc" )都是String的实例 字符串是常量(因为 String 对象是不可变的,所以可以共享) 字符串的本质是字符数组 ...

  4. Java基础笔记-String类

    String 类(被final修饰) 字符串是一种特殊的对象,一旦字符串被初始化就不可以被改变了.(内容不变) 例如: String  s = “abc”; String  s1 = new Stri ...

  5. Java 基础之 String 类

    String String 被声明为 final,因此不能被继承.(Integer 等包装类也不能被继承) 在 java8 中,String 内部使用 char 数组 来存储数据 public fin ...

  6. Java基础笔记-String类2

    StringBuffer 特点: 是字符串缓冲区. 是一个容器,其长度可变,可以操作添加多个数据类型. 最后通过toString方法变成字符串. 被final锁修饰,因此不能被继承. 存储: 方法1: ...

  7. JAVA_SE基础——63.String类的常用方法

    获取方法int length()  获取字符串的长度char charAt(int index) 获取特定位置的字符 (角标越界)int indexOf(String str) 查找子串第一次出现的索 ...

  8. Java String类的常用方法

    String(byte[ ] bytes):通过byte数组构造字符串对象. String(char[ ] value):通过char数组构造字符串对象. String(Sting original) ...

  9. Java 中的 String 类常用方法

    字符串广泛应用在Java编程中,在Java中字符串属于对象,String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等. Strin ...

  10. Java修炼——String类_常用方法_常量池

    String类的定义:String 是不可变字符序列 String 类的常用方法(全部都是不能改变String本身的值,都是在常量池里输出,没有改变其值) String string="ab ...

随机推荐

  1. 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,nloglogutil

    封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,代码比较简单,主要是把MongoTarget的配置.FileTarget的配置集成到类中,同时利用缓存依赖来判断是否需要重新创 ...

  2. Django(三)框架之第二篇

    https://www.cnblogs.com/haiyan123/p/7717788.html 一.知识点回顾 1.MTV模型 model:模型,和数据库相关的 template:模板,存放html ...

  3. 2019-1-17 script(1)

    伪终端(Pseudo Terminal)是成对的逻辑终端设备. grant  授予 tty是teletype(电传打字机)的缩写,后来便成了终端设备的代名词 虚拟终端pty(pseudo-tty) p ...

  4. selenium官方网站文档,testng官方网站文档

    selenium 阅读至grid部分,当前没有远程需求,搁置:https://www.seleniumhq.org/docs/07_selenium_grid.jsp testng http://te ...

  5. MooFest POJ - 1990 (树状数组)

    Every year, Farmer John's N (1 <= N <= 20,000) cows attend "MooFest",a social gather ...

  6. Linux(centos7)如何安装Zend Optimizer Zend Guard Loader

    下载地址:http://www.zend.com/en/products/loader/downloads#Linux 1.解压 wget http://downloads.zend.com/guar ...

  7. linux ------ 使用 screen 后 SSH 断开后程序依旧能在后台运行

    为什么ssh断开后你运行的进程会退出呢? 因为所有进程都得有个父进程.当你ssh到一个服务器上时,打开的shell就是你所有执行命令的父进程. 当你断开ssh连接时,你的命令的父进程就没了.如果处理不 ...

  8. 2018acm-icpc青岛站后记

    我要谢谢队友和出题人给了我这一个走出自闭的机会. 继上一个星期徐州因为1分钟的罚时痛失铜牌之后一度茶饭不思,深陷被铜牌支配的恐惧,孤注一掷将宝压到了下一站的青岛上. 幸好拿了银. 给浙大的出题人点赞, ...

  9. 2017-12-15python全栈9期第二天第七节之x or y ,x 为 非 0时,则返回x

    #!/user/bin/python# -*- coding:utf-8 -*-# x or y ,x 为 非 0时,则返回xprint(1 or 2)print(3 or 2)print(0 or ...

  10. C++ Random 的使用

    1.rand() 方法 rand()不需要参数,它会返回一个从0到最大随机数的任意整数,最大随机数的大小通常是固定的一个大整数. 这样,如果你要产生0~10的10个整数,可以表达为:   int N ...