黑马程序员_<<StringBuffer,包装类>>
--------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! --------------------
1. StringBuffer
1.概述
StringBuffer是一个容器,是字符串的缓冲区,线程安全序列
2.特点
长度可以变换,可以操作多种类型数组
2.增加和插入
1.在尾部插入数组,append(int a),此方法是子字符串的尾部插入的数据,有很多重载方法,此方法返回的是StringBuffer对象,还是本身对象
2.在字符串的指定位置插入数据,用insert(int a),此方法也有很多重载的方法,此方法返回的是StringBuffer对象,还是本身对象
3.StringBuffer bu=new StringBuffer(“abc”);
bu.insert(bu.length,”def”);和bu.append(“def”);是一样的。
public class StringBufferDemo {
public static void main(String [] agrs){
StringBuffer bu=new StringBuffer();
bu.append("abc").append(123).append(true);//在尾部连续添加
System.out.println("bu="+bu);
bu.insert(3, "xx");//在3的位置插入"xx",就是在"abc"后面
System.out.println("bu="+bu);
}
}
结果:
bu=abc123true
bu=abcxx123true
3. 一般操作
1.获取subString();
public void getChars(int srcBegin,int srcEnd,char[] dst,
int dstBegin)将字符串指定范围的字符串方法指定字节数组的范围内。
2替换replay()
3.删除 delete(start,end) deleteCharAt(int index)
public class StringBufferDemo {
public static void main(String [] agrs){
StringBuffer bu=new StringBuffer();
bu.append("abc").append(123).append(true);//在尾部连续添加
System.out.println("bu="+bu);
char []cs=new char[5];
bu.getChars(0, 4, cs, 1);//将bu中充0~4,包含0不包含4的字符方法字节数组中从1开始存放
for(char c:cs)
System.out.print(c+" ");
bu.deleteCharAt(2);//将第三个字符删除
System.out.println("bu="+bu);
bu.delete(0, bu.length());//清空字符串
System.out.println("bu="+bu); }
}
4. StringBuilder
1.5版本之后才有的。线程不同步,不安全,但是能提高效率。可变的字符序列。简化书写,提高安全性用法和StringBuffer一样,其中也会有一个差异的。
5. 包装类
1. 概述
包装类就是把基本数据类型封装成了包和对象,这样就可以使用对象来操作了。
byte-----Byte int-----Integer
short-----Shortbyte-----Byte
double-----Double float---Float
char ---Character boolean---Boolean
作用,一般就是用于数据类型和字符串之间的转换,基本数据类型转换成字符串和字符串转换成基本数据类型
public class BaoZhuang {
public static void main(String[] args) {
String s1="123";
int a=Integer.parseInt(s1);//将字符串转换成整形 String s2=a+"abc";//将整形转换成字符串
System.out.println("s1="+s1);
System.out.println("a="+a);
System.out.println("s2="+s2); }
}
结果:
s1=123
a=123
s2=123abc
2. 进制转换
public class BaoZhuang {
public static void main(String[] args) { System.out.println("10转换成二进制:" + Integer.toBinaryString(10));
System.out.println("10转换成八进制:" + Integer.toOctalString(10));
System.out.println("10转换成十六进制:" + Integer.toHexString(10)); System.out.println("110转换成十进制:" + Integer.parseInt("110", 2));
System.out.println("076转换成十进制:" + Integer.parseInt("076", 8));
System.out.println("3c转换成十进制:" + Integer.parseInt("3c", 16));
}
} 结果:
10转换成二进制:1010
10转换成八进制:12
10转换成十六进制:a
110转换成十进制:6
076转换成十进制:62
3c转换成十进制:60
3.整形和Integer之间的转换。
Integer in=new Integer(“123”);
Int num=in.intValue();
Int n=Integer.parseInt(“123”); 6. 装箱和拆箱 public class Text {
public static void main(String[] args) {
//JDK1.5新特性
Integer n=3;//自动装箱,n是一个对象,而3是int类型,此时3会自动转换成Integer类型,这是自动装箱
n=n+2;//x是对象,2是基本数据类型,因为对象没有加法操作,所以
//n会自动的转换成in类型,然后和2想加,会把结果x+2自动的转换成Integer(装箱) Integer x=127;
Integer x1=127;
System.out.println(x==x1);//true
System.out.println(x.equals(x1));//true
Integer y1=128;
Integer y2=128;
System.out.println(y1==y2);//false
System.out.println(y1.equals(y2));//true /*在1.5新特性中,只要是在byte类型的范围 -128~127之间,他们都存在,不会在开辟新的空间,任何数据都相等
* 超过这个范围,那么他们的地址就不相等了*/
}
}
结果:
true
true
false
true
在1.5新特性中,只要是在byte类型的范围 -128~127之间,他们都存在,不会在开辟新的空间,任何数据都相等,超过这个范围,那么他们的地址就不相等了
--------------------ASP.Net+Android+IOS开发、.Net培训、期待与您交流! --------------------
黑马程序员_<<StringBuffer,包装类>>的更多相关文章
- 黑马程序员_<<String类>>
--------------------ASP.Net+Android+IOS开发..Net培训.期待与您交流! -------------------- 1. String类 1.概述 String ...
- 大数据-将MP3保存到数据库并读取出来《黑马程序员_超全面的JavaWeb视频教程vedio》day17
黑马程序员_超全面的JavaWeb视频教程vedio\黑马程序员_超全面的JavaWeb教程-源码笔记\JavaWeb视频教程_day17-资料源码\day17_code\day17_1\ 大数据 目 ...
- 2016年8月17日 内省(1)18_黑马程序员_使用beanUtils操纵javabean
8.内省(1):18_黑马程序员_使用beanUtils操纵javabean 1.导入两个包: 2.调用静态方法. 9.泛型 map.entrySet() :取出map集合的键值对组成一个set集合. ...
- 黑马程序员_高新技术之javaBean,注解,类加载器
----------- android培训.java培训.java学习型技术博客.期待与您交流! ---------- 第一部分 javaBean 一,由内省引出javaBean 1,内省: 内省对应 ...
- JavaWeb开发之四:servlet技术 黑马程序员_轻松掌握JavaWeb开发之四Servlet开发 方立勋老师视频教程相当的经典
总结: 记住:servlet对象在应用程序运行的过程中只创建一次,浏览器每次访问的时候,创建reponse对象 request对象,然后调用servlet的service方法,reponse对象和re ...
- 黑马程序员_ JAVA中的多线程
------- android培训.java培训.期待与您交流! ---------- 尽管线程对象的常用方法可以通过API文档来了解,但是有很多方法仅仅从API说明是无法详细了解的. 本来打算用一节 ...
- 黑马程序员_ Objective-c 面向对象笔记详解
1)类,对象,方法 类 类名: 1) 类名的第一个字母必须是大写 2) 不能有下划线 3) 多个英文单词,用驼峰标识 类的声明和实现 类的声明 @interface 类名 : NSObject { @ ...
- 黑马程序员_ Objective-c 概述及面向对象与三大特性
-----------android培训.java培训.java学习型技术博客.期待与您交流!------------ (一).语法概述 1. oc介绍:(.m文件) 1> c语言的基础上,增加 ...
- 黑马程序员_ Objective-c 之block、protocol学习笔记
一):block学习总结 block :用来保存一段代码. 1.block 特点: 1> Block封装了一段代码,可以在任何时候执行 2> Block可以作为函数或者函数的返回值, ...
- 黑马程序员——OC语言 类和对象
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)类 1)类的声明 代码编写 ①定义一个Car类,拥有2个属性:轮子数 ...
随机推荐
- python 学习笔记 9 -- Python强大的自省简析
1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...
- javascript prompt示例
<html lang="en"> <head> <title>Date example</title> <script t ...
- javascript 多行字符串
javascript 字符串多行 平时一般使用 字符串+,或者[].join('')的方式 同事推荐了这样的形式 ExceptionDivHtml="<div class='gameI ...
- mud目录命令说明
目錄結構 以下列出的是 ES2 mudlib 根目錄下標準的子目錄結構,以及簡短的說明. /adm 儲存由系統管理者所管理的程式與資料檔. /std 儲存標準物件的程式碼. /obj 儲存通用物件 ...
- zendstudio -chinese
http://archive.eclipse.org/technology/babel/index.php http://www.eclipse.org/babel/downloads.php 注册码 ...
- tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中
1.首先还是要将u-boot写入SD卡中从SD卡启动. 使用读卡器将SD插入电脑中,使用umount卸载u盘, fdisk -l显示其挂载点为 /dev/sdb1 切换到/home/bunfly/im ...
- 【java】一维数组循环位移方阵
输出: 左移:7 4 8 9 1 5 4 8 9 1 5 7 8 9 1 5 7 4 9 1 5 7 4 8 1 5 7 4 8 9 5 7 4 8 9 1 右移:5 7 4 8 9 1 1 5 7 ...
- Glib程序使用Valgrind查找内存泄露
G_DEBUG=gc-friendly G_SLICE=always-malloc //glib有缓存 故需使用 上述两条设置环境变量 G_SLICE和G_DEBUG排除由内存分配机制带来的 ...
- Windows的历史zt
原文地址:http://windows.microsoft.com/zh-CN/windows/history#T1=era0 1975–1981:Microsoft 起步 Microsoft 联合创 ...
- Oracle EBS-SQL (SYS-12):查询各Profile的设置情况.sql
SELECT pro.profile_option_name, pro.user_profile_option_name, lev.level_type TYPE, --lev.level_code, ...