
- 一、Scanner类
- 二、String类的判断功能
- 三、String类的获取功能
- 四、String类的转换功能
例:使用Scanner类
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//创建Scanner类型的对象(注意,要导包)
//System.in:标准的输入流,默认指向键盘
Scanner sc1 = new Scanner(System.in);
//接收整数
System.out.println("请录入一个整数:");
//为了解决(避免)InputMismatchException异常,可以加一个判断
if(sc1.hasNextInt()) {//判断下一个录入的是否是整数,如果是,结果就是True
int num = sc1.nextInt();
System.out.println("num:"+num);
}
//接收字符串类型的数据
Scanner sc2 = new Scanner(System.in);
System.out.println("请录入一个字符串:");
String str1 = sc2.nextLine();//结束标记是:换行符
System.out.println("str1:"+str1);
Scanner sc3 = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str2 = sc3.next();//结束标记:空白字符(空格、tab、换行符)
System.out.println("str2:"+str2);
}
}
运行结果:
注意:
在实际开发中,应用到的最多的是:
nextInt(): 接收整数
nextLine(): 接受字符串
例:String类的判断功能
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//测试 构造方法
//1.将指定的字节数组转成字符串
//a:‘97’
byte[] bys = {97,98,99};
String s1 = new String(bys);
System.out.println("s1:"+s1);
//2.将指定的字符数组转成字符串
char[] cha = {'h','e','l','l','o'};
String s2 = new String(cha);
System.out.println("s2:"+s2);
//在实际开发中,String类非常常用,每次都new很麻烦,于是对于String的语法做了优化,省去了new的动作
String s3 = "abc";//优化
String s4 = new String("abc");//未优化
System.out.println("-------------------");
//测试成员方法
String str1 = "abc";
String str2 = "ABC";
//判断当前字符串与给定字符串是否相同,区分大小写
boolean b1 = str1.equals(str2);
System.out.println("equals():"+b1);
//判断当前字符串与给定字符串是否相同,不区分大小写
boolean b2 = str1.equalsIgnoreCase(str2);
System.out.println("equalsIgenoreCase():"+b2);
//判断是否以给定字符串开头
//需求:判断字符串str1,是否以字符串”a“开头
boolean b3 = str1.startsWith("a");
System.out.println("startsWith():"+b3);
//判断字符串是否为空
boolean b4 = str1.isEmpty();
System.out.println("isEmpty():"+b4);
}
}
运行结果:
例:String类的获取功能
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//定义一个字符串
String str = "Hello java";
//获取当前字符串长度
/*int length = str.length();
System.out.println("该字符串的长度为:"+length);
*/
System.out.println("该字符串的长度为:"+str.length());
//获取指定字符(串)第一次出现的索引
//需求:字符‘l’第一次出现的位置
int index1 = str.indexOf('a');
System.out.println("字符‘l’第一次出现的位置索引:"+index1);
//获取指定字符(串)最后一次出现的索引
//需求:字符‘l’最后一次出现的位置
int index2 = str.lastIndexOf("l");
System.out.println("字符‘l’最后一次出现的位置的索引:"+index2);
//获取指定索引位置(含)之后的字符串
//需求:截取从索引3开始的所有元素
String s1 = str.substring(3);
System.out.println("截取从索引3开始的所有元素为:"+s1);
//获取从索引开始位置(含)到索引结束位置(不含)的字符串
//需求:获取从索引6到索引10的字符串
String s2 = str.substring(6,10);
System.out.println("从索引6到索引10的字符串为:"+s2);
}
}
运行结果:
例:String类的转换功能
import java.nio.charset.StandardCharsets;
public class Main {
public static void main(String[] args) {
//定义一个字符串
String s1 = "abc";
//将字符串转换成字节数组
byte[] bys = s1.getBytes();
for (int i = 0;i < bys.length;i++) {
System.out.println(bys[i]);
}
System.out.println("--------------------");
//将字符串转换为字符数组
char[] chs = s1.toCharArray();
for (int i = 0;i < chs.length; i++) {
System.out.println(chs[i]);
}
System.out.println("--------------");
//将指定类型数据转换成字符串:static String valueOf();
//整数123 --> 字符串"123"
String s2 = String.valueOf(123);
System.out.println(s2+4);
//在实际开发中,上述的方式基本上都会用下面的这行代码替代
String s3 = "" + 123;
System.out.println(s3+4);
//将指定字符(串)替换成新的字符(串)
String s4 = "abc abc abc";
//"d"替换”b“
String s5 = s4.replace("b","d");
System.out.println("替换后的字符串为:"+s5);
//切割字符串,返回切割后的字符串数据,原字符串不变
//将字符串s4,按照空格进行切割
String[] arr = s4.split(" ");
for (int i = 0;i < arr.length;i++) {
System.out.println(arr[i]);
}
//去掉字符串两端的空白字符
String s6 = "a b c";
String s7 = s6.trim();
System.out.println("s6:"+s6);
System.out.println("s7:"+s7);
}
}
运行结果:
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)