StringBuffer和String区别,转换

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类型
		
	}







}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值