博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小白学习之JavaSE-day09-String与基本类型、包装类型的转换,StringBuffer的使用
阅读量:3931 次
发布时间:2019-05-23

本文共 2744 字,大约阅读时间需要 9 分钟。

一、基本类型、包装类型和String之间的互相转换

在这里插入图片描述

  • 直接上代码(有问题的地方希望大家能指出来,谢谢啦)
/*		 * 	基本类型转包装类型		 */		//	1、构造方法		int m = 12;		Integer in = new Integer(m);				//	2、自动装箱		Integer it = m;		//	3、静态valueOf		Integer it1 = Integer.valueOf(m);				/*		 * 	包装类型转基本类型		 */		//	1、自动拆箱		Integer it2 = new Integer(5);		int h = it2;				//	2、xxxValue		h = it2.intValue();				/*		 * 	字符串转包装类型		 */		//	1、包装类的构造方法		String str = "123";		Integer er = new Integer(str);		System.out.println(er);				//	2、包装类的valueOf		Integer er1 = Integer.valueOf(str);				/*		 * 	包装类型转字符串		 */		//	1、String类中的valueOf		String str1 = "123";		Integer er2 = Integer.valueOf(str1);		String str2 = String.valueOf(er2);				//	2、包装类中的toString方法		String str3 = er2.toString();				/*		 * 	字符串转基本类型		 */		//	借助对于的包装类中的parseXxx		int p = Integer.parseInt(str3);				/*		 * 	基本类型转字符串		 */		//	1、基本类型+" "		String s = 1234+"abc";				//	2、静态valueOf		int a = 1234;		String s1 = String.valueOf(a);				//	3、对于包装类中静态toString		int b = a;		String s2 = Integer.toString(b);

二、字符串缓冲区

由于字符串是常量不能改变,因此在程序中经常需要对字符串进行操作,这时如果直接使用String类中的部分方法操作,其实是在内存中不断的生成新的字符串。其中就会存在部分字符串没有使用价值。

在JDK中提供的字符串缓冲区,它主要目的是对字符串进行CRUD操作。

缓冲区:临时存储数据的空间。然后可以在临时区域中对数据进行更改操作。

字符串缓冲区:

  • StringBuffer:多线程操作安全,但是相对效率较低
  • StringBuilder:多线程(并发)不安全,但是效率高,针对单线程的程序优先使用。

2、StringBuffer

2.1、StringBuffer介绍

在这里插入图片描述

StringBuffer:它是final修饰,不能被继承。

在这里插入图片描述

/*	 * 	创建字符串缓冲区对象	 */	private static void demo1() {
// 创建字符串缓冲区对象,其中没有任何的字符数据 StringBuffer sb = new StringBuffer(); sb.append("abcdefg1234"); // length() : 容器中字符个数 int len = sb.length(); System.out.println(len); // capacity() : 当前容器能够存放的最大值 int capacity = sb.capacity(); System.out.println(capacity); }

2.2、添加方法

/*	 * 	字符串缓冲区中的添加方法	 */	private static void demo2() {
StringBuffer sb = new StringBuffer(); // 调用append是给缓冲区的后面添加数据 sb.append('A'); sb.append(12); sb.append(3.14); sb.append("neu"); // 在缓冲区指定的位置上添加数据 sb.insert(3, "BB"); // 字符串缓冲区操作完之后,一般都需要将数据统一转成一个字符串 String s = sb.toString(); System.out.println(s); }

2.3、删除和修改

/*	 * 	删除和修改	 */	private static void demo3() {
StringBuffer sb = new StringBuffer("neusoft"); // 删除指定位置上的字符 sb.deleteCharAt(1); System.out.println(sb.toString()); // 从指定start的位置删除到end位置 sb.delete(1, 3); System.out.println(sb.toString()); // 修改指定位置上的字符数据 sb.setCharAt(0, 'A'); System.out.println(sb.toString()); // 反转字符串 sb.reverse(); System.out.println(sb.toString()); }

2.4、替换

//	替换	private static void demo4() {
StringBuffer sb = new StringBuffer(" neu so ft "); //sb.replace(0 , 2, "NEU"); System.out.println(sb.toString()); sb.trimToSize(); System.out.println(sb.toString()); String s = " neu soft "; // trim是String中的一个方法,用于去除字符串收尾的空白 // 会生成一个新的串 String s2 = s.trim(); System.out.println(s); System.out.println(s2); }

转载地址:http://jqtgn.baihongyu.com/

你可能感兴趣的文章
解读 Oracle 12c 自适应执行计划一例
查看>>
Oracle数据库中如何找到当前正在执行的SQL语句
查看>>
Oracle 12c Adaptive Query Optimization
查看>>
Oracle表访问调优——位图索引和单值查询
查看>>
Oracle OCP 1Z0-050(1-10题)解析
查看>>
Oracle OCP 1Z0-050(11-15题)解析
查看>>
Oracle OCP 1Z0-050(16-20题)解析
查看>>
Oracle OCP 1Z0-050(21题)解析
查看>>
Oracle OCP 1Z0-050(22题)解析
查看>>
Oracle OCP 1Z0-050(23题)解析
查看>>
Oracle OCP 1Z0-050(24题)解析
查看>>
Oracle OCP 1Z0-050(25题)解析
查看>>
Oracle OCP 1Z0-050(26题)解析
查看>>
Oracle OCP 1Z0-050(27题)解析
查看>>
Oracle OCP 1Z0-050(28题)解析
查看>>
Oracle OCP 1Z0-050(29题)解析
查看>>
Oracle OCP 1Z0-050(30题)解析
查看>>
Oracle OCP 1Z0-050(31题)解析
查看>>
Oracle OCP 1Z0-050(32题)解析
查看>>
Oracle OCP 1Z0-050(33题)解析
查看>>