关于String的基础

`import java.util.*;
public class Demo11{
public static void main(String[] args){
String s1 = "hello";
String s2 = "hELLO".toLowerCase();
String s3 = "hELLO";
//System.out.println(s1 == s2);
//System.out.println(s1.equals(s2));
//System.out.println(s1.equalsIgnoreCase(s3));
//是否包含子串
//System.out.println(s1.contains("el"));
//System.out.println(s1.indexOf("e"));
//System.out.println("scanner".lastIndexOf("n"));
//System.out.println("scanner".startsWith("sc"));
//System.out.println("scanner".endsWith("ner"));

	//打印nner (从索引3字符开始打印后面全面字符串)
	//System.out.println("scanner".substring(3));
	
	
	//打印an (不包括后面索引所指的字符)
	//System.out.println("scanner".substring(2,4));
	//System.out.println("scanner c".trim());
	//System.out.println("\tscanner c".trim());
	//System.out.println("\tscanner c\r\n".trim());
	//System.out.println("".isEmpty());  //true  判断字符串是否为空字符串,也就是长度为0
	//System.out.println(" ".isEmpty());
	//false 空白字符串,长度不为0
	//System.out.println(" ".length());  //长度为1
	//System.out.println("  ".length()); //长度为2
	//System.out.println("\t".length()); //长度为1
	//System.out.println(" do g ".length()); //长度为6
	
	//使用replace() 替换子串
	//System.out.println("hello".replace("l","t"));
	//使用String.join() 拼接字符串
	String[] arr = {"A","B","c"};
	String s = String.join("***",arr);
	//System.out.println(s); // A***B***c
	
	//使用String.format() 格式化字符串  可以传入其他参数,替换占位符
	//System.out.println(String.format("Hi %s,your score is %d!","Tom",80));
	
	//System.out.println(String.format("Hi %s,your score is %.2f!","汪",99.99));
	
	//主要的占位符
	//%s:可以任何类型占位,主要是字符串
	//%d:整数占位
	//%x:十六进制占位
	//%f:浮点数占位
	//%.2f:两位小数的占位
	
	//类型转换
	//把任意类型转换或者引用类型转换为字符串 使用String.valueOf(xx);
	//System.out.println(String.valueOf(123)); //123
	//System.out.println(String.valueOf(true));//true
	//System.out.println(String.valueOf(new Object())); //java.lang.Object@2a139a55
	//System.out.println(String.valueOf(new String[]{"ab","cd"}));
	
	//复习数组
	String[] arr1 = new String[]{"ab","cd"};
	String[] arr2 = {"AB","CD"};
	//System.out.println(arr1[0]);
	//System.out.println(arr2[1]);
	
	
	//把字符串转换为其他类型
	//System.out.println(Integer.parseInt("666")); //666
	
	
	//System.out.println(Integer.parseInt("ff",16));  // 255  按十六进制转换
	
	
	//System.out.println(Double.parseDouble("99	")); //99.0
	
	//System.out.println(Boolean.parseBoolean("true"));
	
	// String 与 char[] 的相互转换
	//String ==> char[]
	char[] sTOc = "hello".toCharArray();
	//System.out.println(sTOc[1]);  // e
	
	//char[] ==> String
	String cTOs = new String(sTOc);
	//System.out.println(cTOs);		
			
	//如果修改字符数组的元素,String并不会改变
	//因为通过new String(char[])创建的String实例时,它并不是直接引用传入的char[]数组,而是会复制一份,所以修改外部char[]数组不会影响String实例内部的char[]数组,因为这是两个不同的数组
	
	//System.out.println(cTOs);		
	sTOc[1] = 't';
	//System.out.println(cTOs);
	
	//从上面也说明了String的不变形设计,如果传入的对象有可能改变,我们需要复制而不是直接引用
	
	int[] ns = { 1, 1, 2, 3, 5, 8 };
    //System.out.println(Arrays.toString(ns));
	
	int[] arr3 = {1,2,3,3,5};
	//System.out.println(Arrays.toString(arr3));
	
	//反向打印数组元素
	for(int i=ns.length-1;i>=0;i--){
		System.out.print(ns[i]+",");
	}
}

}
`

posted @ 2020-12-23 13:50  dog_IT  阅读(95)  评论(0编辑  收藏  举报