JAVA SE:(一)、常用类String

String类

1、Scanner类

Scanner sc = new Scanner(System.in);
System.out.println("请输入一个正整数:");
int i = sc.nextInt();
  • nextInt()方法代表下一个键盘输入值的类型
  • hasNext()判断是否还有值

2、String类

2.1、String类的构造方法

无参构造,具体见jdk文档,还有很多种

String s1 =new String()

注意:equals和 == 号的区别

  • equals 比较的是两个字符串是否相等,值
  • 比较引用是否相等,必须是两个都为相同对象时,才为true

常量池的概念和特点

  • 常量池中没有这个字符串对象,就创建一个,如果有直接用即可
String str1="ab";
String str2="abc";
String str3=str1+"c";
System.out.println(str3==str2); //false
System.out.println(str3.equals(str2)); //true

String中的字符串串联符号“+”以及将其他对象转换为字符串的特殊支持,字符串串联是通过(字符串的缓冲区)==StringBuilder(或StringBuffer)==及其append方法实现的。底层会先创建StringBuilder对象,将字符串串起来(“abc”),然后再用toString()方法转换为String对象。

2.2、String类的判断功能

boolean equals(Object obj) :比较两个字符串的内容是否相同,区分大小写

boolean equalsIgnoreCase(String str):比较字符串的内容是否相同,忽略大小写

boolean contains(String str):判断字符串是否包含小字符串

boolean startsWith(String str):判断字符串是否以某个指定的字符串开头

boolean endsWith(String str):判断字符串是否以某个指定的字符串结尾

boolean isEmpty(): 判断字符串是否为空

“”和null的区别

“”是字符串常量,同时也是一个String类的对象,既然是对象当然也可以调用String类中的方法

null是空常量,不能调用任何方法,否则会出现空指针异常,null常量可以给任意的引用数据类型赋值

2.3、String类的获取功能

数组中的length和字符串中的length的区别:

数组中的length是属性

而字符串中的length()是方法。

一般都是左闭右开

int length():获取字符串长度

char charAt(int index):获取指定索引位置的字符串

int indexOf(char ch):返回指定字符在此字符串中第一次出现处的索引,如果不存在,返回-1

int indexOf(String str):返回指定字符串在此字符串中第一次出现处的索引

int indexOf(int ch,int fromIndex):返回指定字符在此字符中从指定位置后第一次出现处的索引

int indexOf(String str,int fromIndex):返回指定字符串在此字符串中从指定位置后第一次出现处的索引

lastIndexOf(代替前面的,是从后向前找)

String substring(int start):从指定位置开始截取字符串,默认到末尾

String substring(int start,int end):从指定位置开始到指定位置结束截取字符串

  • 面试题中,substring方法返回的是一个新的字符串,原来那个字符串不变

2.4、字符串的遍历

String s="abcde";
        for (int i = 0; i <s.length() ; i++) {
            char c=s.charAt(i);
            System.out.print(c+" ");
        }

2.5、String类的转换功能(需要了解)

以下都是对象.方法

byte[] getBytes():把字符串转换为字节数组

char[] toCharArray():把字符串转换为字符数组

static Sting valueOf(char[] chs):把字符数组转换为字符串

static String valueOf(int i):把int类型的数据转换成字符串

这两个底层都是使用new String()来做的

String toLowerCase():把字符串转成小写

String toUpperCase():把字符串转成大写

String concat(String str):把字符串拼接

2.6、String的其他功能

  • String的替换功能
    • String replace(char old,char new)
    • String replace(String old,String new)
  • String的去除字符串两空格,去除开头和末尾的
    • String trim()
  • String 的按字典顺序比较两个字符串
    • int compareTo(String str)(暂时不用掌握)
    • int compareToIgnoreCase(String str)(了解)
上一篇:json格式字符串处理


下一篇:Java SE