1
要求:.输入 abc 输出 cba
public class DaoXu {
public static void main(String[] args) {
System.out.println("请输入一个字符串");
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
String dao = "";
char[] chs = s.toCharArray();//将字符串转换为字符串数组
for(int x = chs.length-1;x>=0;x--){
dao+=chs[x];
}
System.out.println(dao);
//
// for(int x = s.length()-1; x>=0;x--){//分别取出字符串中每个字符
// char c = s.charAt(x);
// dao = dao+c;
//
//
}
2.
要求:统计woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun中有多少个jiva
public class Tongji {
public static void main(String[] args) {
String s = "woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun";
String tong = "java";
int count = 0;
for(int x = 0;x<s.length()-5;x++){
String jiequ = s.substring(x, x+4);//每次都截取四个 与java进行比较
if(jiequ.equals(tong)){
count=count+1;
}
}
System.out.println(count);
}
}
3.
StringBuffer和String区别
3.1 StringBuffer:线程安全的可变字符序列
3.2 String和StringBuffer(线程安全,效率低),StringBulider(线程不安全的:效率高!)的区别?
共同点:都是字符串类型
不同点:后者来说,在内存中会构造一个字符串缓冲区,是一个可变的字符序列,:String:一旦被赋值,
其值不能再改变,并且不可变的字符序列
3.3 StringBuffer的构造方法:
public StringBuffer() :构造一个字符串缓冲区,构造一个其中不带字符的字符串缓冲区,初始容量为 16 个字符。
public StringBuffer(int capacity):构造一个字符串缓冲区,指定容量
public StringBuffer(String str):将str字符串创建到字符串缓冲区中:str+16
获取的方法:
public int length():获取字符串长度
public int capacity():获取字符串缓冲区的容量大小
3.4 添加功能
public StringBuffer append(String str):表示在字符串缓冲追加,返回字符串缓冲区本身
public StringBuffer insert(int offset,String str):在指定位置插入str这个字符串,返回缓冲区本身
public class SreingB {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
//public StringBuffer append(String str):表示在字符串缓冲追加,返回字符串缓冲区本身
sb.append(true);
sb.append('s');
sb.append(2);
System.out.println(sb);//trues2
//public StringBuffer insert(int offset,String str):在指定位置插入str这个字符串,返回缓冲区本身
sb.insert(3, "ppp");
System.out.println(sb);//trupppes2
}
}
3.5转换
public class Demo1 {
public static void main(String[] args) {
//String转换成StrinBuffer
String s = "Hello";
//方式一:通过StringBuffer的 构造方法
StringBuffer sb = new StringBuffer(s);
//方式二:通过无参构造创建字符串缓冲区对象,然后用append方法添加
StringBuffer sb2 = new StringBuffer();
sb2.append(s);
//StringBuffer向String转换
StringBuffer sb3 = new StringBuffer("Hello");
//方式一:String类中的构造方法可以传入一个缓冲区对象
String s1 = new String(sb3);
//方式二:StringBuffer中的特有功能:toString();可以将数据转换成一个字符串类型
String s2 = sb3.toString();
}
}
4.
Integer:多用于int转换String
public static void main(String[] args) {
//int转换成String
int i = 100;
//方式一:字符串拼接
String s = ""+i;
//方式二:int——>Integer--->String
Integer ii = new Integer(i);
String s2 = ii.toString();//返回一个表示该 Integer 值的 String 对象
//方式三:public static String toString(int i)返回一个表示指定整数的 String 对象
String s3 = Integer.toString(i);
}
5.
要求:字符串反转
import java.util.Scanner;
//字符串反转
public class Demo2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
String s =fanzhuan(line);
System.out.println(s);
}
//使用String类型进行拼接
public static String fanzhuan(String s){
String s1 ="";
for(int x = s.length()-1; x>=0;x--){
char c =s.charAt(x);//获取指定索引处的字符
s1 = s1+c;
}
char ch[] = s.toCharArray();//将字符串类型转换成字符数组 再倒着遍历
return s1;
}
//StringBuffer的反转功能
public static String fanzhuan2(String s){
StringBuffer sb = new StringBuffer(s);
sb.reverse();
return sb.toString();//StringBuffer转换成String类型
}