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

Java字符串常用操作

2017-04-18 16:12 316 查看
package 字符常用方法;

import java.util.Arrays;

public class Test {
// 将字节数组变换成字符串
public static void fun1() {
byte[] arr = { 65, 66, 67, 68 };
String string = new String(arr);
System.out.println(string);
}

// 字符串常量池
public static void fun2() {
String str1 = "abc";
String str2 = "abc";
System.out.println(str1 == str2); // true 字符串常量池

}

// new
public static void fun3() {
String str1 = "abc";
String str3 = new String("abc");
System.out.println(str1 == str3); // false
}

// 从哪里开始一共几个
// 字符数组转化为字符串
public static void fun4() {
char[] arr = { 'a', 'b', 'c', 'd', 'e' };
String string = new String(arr, 0, 1);
System.out.println(string);
}

// 字符串长度
public static void fun5() {
String string = "fdafdasfadsfdsfd";
System.out.println(string.length());
}

// 根据位置获取字符
public static void fun6() {
String string = "abcdefgh";
System.out.println(string.charAt(2));
}

// 是否包含指定字符串
public static void fun7() {
String string = "abcdefgh";
System.out.println(string.contains("abc"));
}

// 字符串截取
public static void fun8() {
String string = "abcdefgh";
System.out.println(string.substring(0));
// 从指定位置开始到最后结束
System.out.println(string.substring(0, 2));
// 包括起点不包括终点
}

// 根据字符返回字符串中的位置
public static void fun9() {
String string = "abcdefgh";
System.out.println(string.indexOf("c"));
System.out.println(string.lastIndexOf('c'));
// 如果不存在用-1判断
// 如果不存在indexOf()返回值为-1
}

// 字符串截断
public static void fun10() {
String string = "abc,def,gh";
String[] strs = string.split(",");
for (String string2 : strs) {
System.out.println(string2);
}
System.out.println("-------------------------");

String string1 = "aaa.aa.a";
String[] strs1 = string1.split("\\.");
for (String string2 : strs1) {
System.out.println(string2);
}
}

// 字符串转化为字符数组
public static void fun11() {
String string = "abcdefgh";
char[] arr = string.toCharArray();

for (char c : arr) {
System.out.println(c);
}

}

// 字符串转化为字节数组
public static void fun12() {
String string = "abcdefgh";
byte[] bs = string.getBytes();
System.out.println(Arrays.toString(bs));
}

// 大小写转化
public static void fun13() {
String string = "abcdefgh";
System.out.println(string.toUpperCase());
}

// 字符转替换
public static void fun14() {
String string1 = "abcdefgh";
String string2 = string1.replace("sss", "hhh");// 没有找到就是原来的串
System.out.println(string2);
System.out.println(string1 == string2);
}

// 字符串去除空格
public static void fun15() {
System.out.println("-" + "     as bc   ".trim() + "-");
}

// 将基本数据类型转化为字符串

public static void fun16() {
System.out.println(String.valueOf(false) + 1);
System.out.println(String.valueOf(12) + 1);
}

// 字符串的判断
public static void fun17() {
String string = "abc";
System.out.println("abc".equalsIgnoreCase(string));

}

// 字符串比较
public static void fun18() {
String string = "abc";
System.out.println(string.compareTo("ab"));
}

// 字符串是否以指定字符串开始,以及结束
public static void fun19() {
String string = "Test.java";
System.out.println(string.startsWith("Test"));

}

// 字符串内存
// 可以对字符串池进行操作的
public static void fun20() {
String s1 = "abc";
String s2 = "abc";
String s3 = new String("abc");
s1 = s3.intern();// 池中没有就创建。。
System.out.println(s1 == s2);
System.out.println(s1 == s3);

}

// 字符串数组的排序
public static void fun21() {
String[] arr = { "nba", "abc", "cba", "zz", "qq", "haha" };
String tmp;
System.out.println(Arrays.toString(arr));// [nba, abc, cba, zz, qq,haha]
for (int i = 0; i < arr.length - 1; i++) {
for (int j = i + 1; j < arr.length; j++) {
if (arr[j - 1].compareTo(arr[j]) > 0) {
tmp = arr[j - 1];
arr[j - 1] = arr[j];
arr[j] = tmp;
}
}
}
// System.out.println(Arrays.toString(arr));/[abc, cba, haha, nba,
// qq,zz]
}

// 指定子串在主串中出现的次数
public static void fun22() {
String string = "abcdabceabc";
int count = 0;
int index = 0;
while ((index = string.indexOf("abc")) != -1) {// 这样会浪费大量内存
string = string.substring(index + 3);
count++;
}
System.out.println(count);
}

// 指定子串在主串中出现的次数
public static void fun23() {
String string = "abcdabceabcabc";
int count = 0;
int index = 0;
int ss = 0;
while ((index = string.indexOf("abc", ss)) != -1) {// 这样不会产生内存浪费
ss = index + 3;
count++;
}
System.out.println(count);
}

// 两个字符串中的
//最大相同子串
public static void fun24() {
String string="fdsafdasfafasabcded";
String str1="xcabcdvbn";
String sub=null;
for(int i=0;i<str1.length();i++){
for(int j=0,z=str1.length()-i;z<str1.length()+1;j++,z++){
sub=str1.substring(j,z);
if(string.indexOf(sub)!=-1){
System.out.println(sub);
return;
}
}

}
}

// 去除两端空格
public static void fun25() {
String string = "-- abcdabc  eabcabc     -    ";
System.out.println(string);
string=string.trim();
System.out.println(string);
}

public static void main(String[] args) {
fun24();// 将字节数组变换成字符串
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: