Java基础_0308:String类的常用方法

取出指定索引的字符 —— 使用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

原文地址:https://www.cnblogs.com/xuwei1/p/8353477.html

时间: 2024-11-11 09:40:42

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

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

Java 中 String 类的常用方法 Ⅰ String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之处吧. String 类的常用方法: 结合代码来熟悉一下方法的使用: 运行结果: 友情提示: 1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1 2. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引:如果没有匹配结果,返回 -1 3. 使用

Java基础之String类的细节问题

本文转载自http://sarin.iteye.com/blog/603684/ 先来看一个例子,代码如下: Java代码   public class Test { public static void main(String[] args) { String str = "abc"; String str1 = "abc"; String str2 = new String("abc"); System.out.println(str == 

整理Java基础知识--String类

Java String 类创建字符串最简单的写法:String i = "我是字符串":String 类是不可改变的,一旦创建了String对象,就固定了 String i = "123"; System.out.println("i = " + i); i = "abc"; System.out.println("i = " + i); 输出结果: 123 abc 等价于: String i = new

Java基础笔记-String类

String 类(被final修饰) 字符串是一种特殊的对象,一旦字符串被初始化就不可以被改变了.(内容不变) 例如: String  s = “abc”; String  s1 = new String(“abc”); s在内存中有一个对象, s代表的是一个类类型变量,”abc”是一个对象. s1在内存中有两个对象,分别是new出来的和:  “abc” . s == s1;的结果是false.   因为s和s1它们所对应的地址不同,比较的两个地址,s和s1中存储的地址数值是不同的.因此是fal

Java基础之String类、StringBuffer类、StringBuilder类

String类对象有两种实例化方法 直接赋值:只开辟一块对内存空间,可以自动入池. 构造方法:开辟两块[堆]内存空间,不会自动入池,使用intern()方法手动入池. 任何一个字符串都是String类的匿名对象. 字符串一旦声明则不可以改变,可以改变的只是String类对象的引用. String类可以使用 + 进行字符串的连接操作 StringBuffer类的内容可以进行修改,而String类的内容是不可以修改的. 在String类里面,提供了一个与StringBuffer类比较的方法: pub

Java基础笔记-String类2

StringBuffer 特点: 是字符串缓冲区. 是一个容器,其长度可变,可以操作添加多个数据类型. 最后通过toString方法变成字符串. 被final锁修饰,因此不能被继承. 存储: 方法1:append() 添加数据到缓冲区. 返回类型:StringBuffer 方法: append(指定数据)  将指定数据添加到已有数据的结尾. 方法2:insert(index,数据内容) 返回类型:StringBuffer 方法: insert(index,数据内容) 将数据内容插入到指定的ind

Java String类的常用方法

String(byte[ ] bytes):通过byte数组构造字符串对象. String(char[ ] value):通过char数组构造字符串对象. String(Sting original):构造一个original的副本.即:拷贝一个original. String(StringBuffer buffer):通过StringBuffer数组构造字符串对象. byte[] b = {'a','b','c','d','e','f','g','h','i','j'}; char[] c =

Java 中的 String 类常用方法

字符串广泛应用在Java编程中,在Java中字符串属于对象,String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等. String 类的常用方法: 注意事项: 1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1 2. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引:如果没有匹配结果,返回 -1 3. 使用 substring(beginIndex , endIndex

Java 中 String 类的常用方法

String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等,下面我们就来领略它的强大之处吧. String 类的常用方法: 结合代码来熟悉一下方法的使用: 运行结果: 我们继续来看 String 类常用的方法,如下代码所示: 运行结果: 那么,“==” 和 equals() 有什么区别呢? ==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象 equals(): 比较存储在两个字符串对象中的内容是否一致 P

Java基础之File类的使用

Java基础之File类的使用 1.File类的构造方法和常用方法 2.对File中listFile(FileNameFilter name)学习 3.与File文件类相关的实现 File类的构造方法和常用方法: 在Java中File类在IO流中被频繁使用,可以使用一个文件路径来表示在特定位置上的文件,但是需要注意的是这个路径只表示一个文件抽象的概念, 文件到底在不在这个路径下是不确定,换句话说,是不能通过文件路径来判断文件是否存在. 构造方法 File(File parent, String