您的位置:首页 > 编程语言 > Java开发

Java学习之String类

2015-08-26 15:40 399 查看
Java中的String类也是对字符串事物的描述,字符串的简单用法如下:

package com.jikexueyuan.ch;

import java.util.Scanner;
public class Test02 {
public static void main(String[] args){
String s1 = "abc";
//字符串一旦被初始化就不可更改
String s2 = new String("abc");
//s1在内存中只有一个对象 s2在内存中有两个对象
//s2的内存模型如下图
System.out.println(s1 == s2);//s1 s2是不同的对象
System.out.println(s1.equals(s2));//该方法来判断字符串是否想等
}
}



s2的内存模型

String类的基本操作

1 字符串的长度

int length();

2从字符串中取出指定位置的字符串

char charAt(int index);

3根据字符获取该字符在字符串中的位置

int indexOf(char ch);

int indexOf(char ch, int fromIndex)//从fromIndex位置开始查找

int indexOf(String str);

int indexOf(String str, int fromIndex);

int lastindexOf(int ch);

4字符串中是否包含某一个子串

boolean contains(str);

5判断长度是否为0

boolean isEmapty();

6判断字符串是否以指定字符串开头/结尾

boolean stratsWith(str);

boolean endsWith(str);

7判断内容是否相同

boolean equals(str);

8将字符数组转成字符串

new String(chs);

9将字符串转成字符数组

char []chs = s.toCharArray();

10将字节数组转成字符串。

String(byte[])


11替换

String replace(oldchar, newchar);

12转换(字符串转换为大写或者小写)

String toUpperCase();

String toLowerCase();

13去空格(两端的)

String trim();

14比较

int compareTo(String);

示例如下:

package com.jikexueyuan.ch;

import java.util.Scanner;
public class Test02 {
public static void main(String[] args){
String str = "  Hello world Hello  ";
System.out.println(str.length());//1
char s = str.charAt(2);//2
System.out.println(s);
System.out.println(str.indexOf('l' ));//3
System.out.println(str.indexOf('l', 6));//3
System.out.println(str.indexOf("llo"));//3
System.out.println(str.indexOf("llo", 6));//3
System.out.println(str.lastIndexOf('l'));//3

System.out.println(str.contains("llo"));//4
System.out.println(str.isEmpty());//5
System.out.println(str.startsWith("Hello"));//6
System.out.println(str.endsWith("llo  "));//6

String str1 = str.replace("Hello", "goodbye");//11
System.out.println(str1);

String str2 = str.toLowerCase();
String str3 = str.toUpperCase();
String str4 = str.trim();
System.out.println(str2 +"\n"+ str3+"\n" + str4);
int a = str2.compareTo(str3);
System.out.println(a);
}
}


练习:将字符串反转。

/*

思路:

1,将字符串变成数组。

2,对数组反转。

3,将数组变成字符串。

package com.jikexueyuan.ch;

import java.util.Scanner;
public class Test02 {
public static void main(String[] args){
String str = "abcdefg";
char[] chs = str.toCharArray();
String s = reverse(chs, 0, str.length());
System.out.println(s);
}

public static String reverse(char[] c, int x, int y) {
// TODO Auto-generated method stub
for(int start=x, end=y-1;start<end;start++,end--)
swap(c, start, end);
return new String(c);
}

private static void swap(char[] c, int x, int y) {
// TODO Auto-generated method stub
char temp = c[x];
c[x] = c[y];
c[y] = temp;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: