本文主要介绍一些Java语言格式占位符、String类构造方法和其他方法,在学习的时候查阅了jdk1.8参考文档,同时这几天的学习对于以后怎样查阅和学习参考文档有了很大的提升。具体的用法在java源文件中写明了备注。
import java.util.*;
class Demo1
{
public static void main(String[] args)
{
change();
System.out.println("************************");
other();
System.out.println("************************");
toFormat();
}
//格式占位符
public static void toFormat()
{
//对指定字符串进行格式化
//第一个参数是如何格式化,第二个是数据
/*
%s:替代字符串-->:凑够n位字符串,如果不够,补空格
%d:整型数字占位符 -->:
%f:浮点型 -->保留几位小数
%c:字符型
*/
String ss = String.format("%10s%5d%.6f%8c", "hello", 56, 0.234, 'K');
sop(ss);
}
public static void other()
{
//将字符o全部换为m
String s1 = "helloworld".replace('o', 'm'); //字符串替换,替换的可以是字符串也可以是字符
sop(s1);
sop("fwefwefgrgrgd".substring(2)); //截取子串
sop("fwefwefgrgrgd".substring(2,10)); //包括起始位置,不包括结束位置,到起始位置的前一位
sop("WRFFDFfeT".toLowerCase()); //字符串转小写
sop("efewffeffd".toLowerCase()); //字符串转大写
//去除字符串两边的空格,不去除中间的空格
sop("[" + " kdfkw egfwe ".trim() +"]");
//按字典顺序比较两个字符串
//左边>右边 >0
//左边<右边 <0
//相等 =0
int num1 = "aabbcc".compareTo("aab");
sop(num1);
int num2 = "aabbcc".compareTo("A");
sop(num2);
int num3 = "AAA".compareToIgnoreCase("aaa");
sop(num3);
//拼接
sop("abc".concat("fsd"));
//切割
String[] shuzu=",lisi,wangwu,zhaoliu,zhangsan".split(",");
sop(shuzu.length);
for(String ss:shuzu)
sop(ss);
//将若干干字符串拼接到一起,元素和元素之间以指定的分隔符分隔
//join(CharSequence delimiter, CharSequence... elements)
//返回一个新的字符串,由 CharSequence elements的副本组成,并附有指定的delimiter的 delimiter 。
//参数:
//delimiter - 分隔每个元素的分隔符
//elements - 要加入的元素。
String sss = String.join("-","hello","world","hehe");
sop(sss);
}
//转换,使用构造方法
public static void change()
{ //String(char[] value)
char[] arr = {'a','w','t'};
String str = new String(arr);
sop(str);
//String(char[] value, int offset, int count)
String str1 = new String(arr, 1, 2);
sop(str1);
//将字符串转成字符数组
//使用toCharArray()
String str2 = "hello";
char[] ch = str2.toCharArray();
for(char cc:ch)
{
sop(cc);
}
//将字节数转成字符串
//使用String(byte[] bytes)
byte[] array = {65,66,67,68,69}; //字符对应的编码
String str3 = new String(array); //把编码转成对应的字符---解码
sop(str3);
//把编码转成对应的字符
//String str4 = new String(array, "utf-8");
//sop(str4);
//将字符串转成字数组
//getBytes(Charset charset)
//使用给定的charset将该String编码为字节序列,将结果存储到新的字节数组中。
byte[] arr2 = "你好".getBytes(); //编码[-60, -29, -70, -61]
sop(Arrays.toString(arr2));
String str4 = new String(arr2); //解码---解码和编码使用的编码方式应该一致,否则会乱码
sop(str4);
//将基本数据类型或对象转成字符串类型
//1.基本数据类型
sop(String.valueOf(66));
//2.对象
sop(new Object());
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}
运行结果如下: