继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

乌托邦漂流者的Java学习笔记12

维我独尊
关注TA
已关注
手记 15
粉丝 5
获赞 49

不知道说啥。。。
字符串:
字符串被作为 String 类型的对象处理。 String 类位于 java.lang 包中。默认情况下,该包被自动导入所有的程序。
字符串不变性:字符串不能被修改,所谓修改其实是新开辟了一块内训空间,创建后是不可变的。
每次 new 一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用 ”==” 比较时也为 ”false” ,如果只需比较内容是否相同,应使用 ”equals()” 方法
图片描述

  1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1
  2. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引;如果没有匹配结果,返回 -1
  3. 使用 substring(beginIndex , endIndex) 进行字符串截取时,包括 beginIndex 位置的字符,不包括 endIndex 位置的字符
    针对如此繁杂的方法,推荐大家一个学习技巧:好记性不如烂笔头!多看的同时一定要多敲哦~~
public class Str {
    public static void main(String[] args) {
        String str="学习 Java 编程";
        System.out.println("字符串长度为"+str.length());
        char c='编';
        System.out.println("字符‘编’的位置"+str.indexOf(c));
        String ch="immoc";
        System.out.println("字符串immoc的位置为"+str.indexOf(ch));
        String ch2="Java";
        System.out.println("字符串java的位置为"+str.indexOf(ch2));
        String[] arr=str.split(" ");
        System.out.println("空格将字符串分割为"+Arrays.toString(arr));
        System.out.println("获取3.7.之间的字符串"+str.substring(3,7));
    }
}

运行结果为:
图片描述

import java.util.Arrays;
public class HelloWorld {
    public static void main(String[] args) {
        // Java文件名
        String fileName = "HelloWorld.java"; 
        // 邮箱
        String email = "laurenyang@imooc.com";

        // 判断.java文件名是否正确:合法的文件名应该以.java结尾
        /*
        参考步骤:
        1、获取文件名中最后一次出现"."号的位置
        2、根据"."号的位置,获取文件的后缀
        3、判断"."号位置及文件后缀名
        */
        //获取文件名中最后一次出现"."号的位置
        int index = fileName.lastIndexOf('.');

        // 获取文件的后缀
        String prefix =fileName.substring(index);

        // 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"
        if ( index!=0&&index!=-1&&prefix==".java" ) {
            System.out.println("Java文件名正确");
        } else {
            System.out.println("Java文件名无效");
        }

        // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前
         /*
        参考步骤:
        1、获取文件名中"@"符号的位置
        2、获取邮箱中"."号的位置
        3、判断必须包含"@"符号,且"@"必须在"."之前
        */
        // 获取邮箱中"@"符号的位置
        int index2 = email.indexOf('@');

        // 获取邮箱中"."号的位置
        int index3 = email.indexOf('.');

        // 判断必须包含"@"符号,且"@"必须在"."之前
        if (index2 != -1 && index3 > index2) {
            System.out.println("邮箱格式正确");
        } else {
            System.out.println("邮箱格式无效");
        }
    }
}
public static void main(String[] args) {
    String str = "学习 Java 编程";
    System.out.println("转换为小写"+str.toLowerCase());
    System.out.println("转换为大写"+str.toUpperCase());
    System.out.println("位置为一的字符:"+str.charAt(1));
    String str2 =new String("学习 Java 编程");
    System.out.println("比较字符串内容是否相同"+str.equals(str2));
    System.out.println("比较字符串内存地址是否相同"+(str==str2));
    byte[] b=str.getBytes();
    for(int i=0;i<b.length;i++){
        System.out.printf(b[i]+" ");
    }

}

StringBuilder:操作修改了 str 对象的值,而没有创建新的对象,这就是 StringBuilder 和 String 最大的区别。
提供的方法:
图片描述

public static void main(String[] args) {
    StringBuilder str = new StringBuilder("Hello");
    str.append(" immoc");
    str.append(520);
    System.out.println("长度为"+str.length());
    System.out.println("插入前为:"+str);
    str.insert(11,'!');
    System.out.println("插入后为: "+str);
    str.toString();
}
打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP