字符串
案例一:用构造器,数组,字节数组,和直接创建的方式创建字符串
package com.company.String类;
import java.sql.SQLOutput;
public class demo1 {
public static void main(String[] args) {
//使用空参构造
String str1=new String();
System.out.println("第一个字符串"+str1);
//根据字符串数组创建字符串
char[] charArray=new char[]{'A','B','C'};
String str2=new String(charArray);
System.out.println(str2);
//根据字节数组创建字符串
byte[] byteArray=new byte[]{97,98,99};
String str3=new String(byteArray);
System.out.println(str3);
//直接创建
String str4="你好我是直接创建的字符串";
System.out.println(str4);
}
}

案例二:字符串比较大小
字符串常量池:程序中直接写上的双引号字符串,就在字符串常量池中;
所以第一个比较相等
对于引用类型比较的是字符串的地址,对于基本类型比较的是值大小
使用equals()方法比较引用类型,比较的是内容大小
package com.company.String类;
public class demo2 {
public static void main(String[] args) {
String str1="abc";
String str2="abc";
char[] charArray=new char[]{'a','b','c'};
String str3=new String(charArray);
System.out.println(str1==str2);
System.out.println(str1==str3);
System.out.println(str2==str3);
System.out.println(str1.equals(str3));
}
}

案例三:字符串长度,拼接,获取索引位置单个字符,查找字符串在本来字符串中第一次出现的索引位置
package com.company.String类;
public class demo3 {
public static void main(String[] args) {
String str="abcdefghijklmn1234567";
System.out.println(str.length());
String str2="hello";
String str3="world";
String str4=str2.concat(str3);
System.out.println(str4);
char ch="angxas21".charAt(3);
System.out.println(ch);
String orgin_str="dbfasiuf ";
int index=orgin_str.indexOf("as");
System.out.println(index);
}
}

案例四:字符串截取
public string substring(int index);从参数到末尾,获取一个新的字符串
public string substring (int begin,int end) 从begin开始,到end结束获取新的字符串,bengin可取,end不可取
package com.company.String类;
public class demo4 {
public static void main(String[] args) {
String str="dcbaskcdfbhkwse2334";
String str2=str.substring(5);
String str3=str.substring(5,10);
System.out.println(str3);
System.out.println(str);
System.out.println(str2);
}
}

案例五:字符串转换为字符数组,字节数组,内容替换
package com.company.String类;
import com.sun.xml.internal.bind.v2.runtime.output.StAXExStreamWriterOutput;
import java.nio.charset.StandardCharsets;
public class demo5 {
public static void main(String[] args) {
String str="chbiasudcha2312";
char[] chars = str.toCharArray();
System.out.println(chars[2]);
System.out.println(chars[3]);
byte[] bytes_array = str.getBytes(StandardCharsets.UTF_8);
for(int i=0;i<=bytes_array.length-1;i++){
System.out.print(bytes_array[i]+" ");
}
String replace = str.replace('a', '*');
System.out.println();
System.out.println(replace);
System.out.println(str);
}
}

案例六:字符串切割
package com.company.String类;
public class demo6 {
public static void main(String[] args) {
String str="dcb,shcias,cbasc";
String[] strArray = str.split(String.valueOf(','));
for(int i=0;i<=strArray.length-1;i++){
System.out.println(strArray[i]);
}
String str2="scbas scjoias ajscioas";
String[] newArrray = str2.split(" ");
for(int i=0;i<=newArrray.length-1;i++){
System.out.println(newArrray[i]);
}
System.out.println("===============");
String str3="asc.cas.cgaus.ca";
String[] split = str3.split("\\.");
String[] split1 = str3.split(String.valueOf('.'));
for(int i=0;i<=split.length-1;i++){
System.out.println(split[i]);
}
}
}

案例七:统计字符串中大写字母,小写字母,数字,字符出现次数
package com.company.String类;
import java.util.Scanner;
public class demo7 {
public static void main(String[] args) {
//统计一组字符串中数字,大写字母,小写字母,其他字符出现字数
int numCount=0;
int upperCount=0;
int lowerCount=0;
int others=0;
System.out.println("请输入一组字符串");
Scanner scanner=new Scanner(System.in);
String scanStr=scanner.next();
char[] chars = scanStr.toCharArray();
for(int i=0;i<=chars.length-1;i++){
if('0'<=chars[i] && chars[i]<='9'){
numCount++;
}
else if ('A' <= chars[i] && chars[i] <= 'Z') {
upperCount++;
}
else if('a'<=chars[i] && 'z'>=chars[i]){
lowerCount++;
}
else{
others++;
}
}
System.out.println("数字一共有"+numCount);
System.out.println("大写字母"+upperCount);
System.out.println("小写字母"+lowerCount);
System.out.println("其他"+others);
}
}

4059

被折叠的 条评论
为什么被折叠?



