Java基础笔记-String类2
StringBuffer
特点:
- 是字符串缓冲区.
- 是一个容器,其长度可变,可以操作添加多个数据类型.
- 最后通过toString方法变成字符串.
被final锁修饰,因此不能被继承.
存储:
方法1:append() 添加数据到缓冲区.
返回类型:StringBuffer
方法: append(指定数据) 将指定数据添加到已有数据的结尾.
方法2:insert(index,数据内容)
返回类型:StringBuffer
方法: insert(index,数据内容) 将数据内容插入到指定的index位置中去.
删除:
方法1: delete(int start,int end) 删除缓冲区的数据.
返回类型:StringBuffer
方法: delete(int start,int end) 将数据从start开始到end的位置删除
包含头不包含尾部,即包含start的位置,不包含end的位置.
方法2: deletecharAt(index) 删除指定index位置的字符
替换:
方法1: replace(位置1,位置2,(String类型的)替换内容)
返回类型为StringBuffer
方法: replace(位置1,位置2,(String类型的)替换内容)
将数据从位置1到位置2(不包含位置2)的数据替换成要要替换的字符串内容.
方法2: setCharAt(位置,要替换的内容)
返回类型 void
方法: setCharAt(int位置,char要替换的内容) 将数据从指定的位置用替换的字符内容.
反转: reverse() 返回类型StringBuffer.
有关的代码实例:
class StringBufferDemo
{
public static void main(String args[])
{
//function_add();
//function_del();
StringBuffer sb = new StringBuffer("abcdefg");
char [] ch = new char[];
sb.getChars(,,ch,);
for(int i = ; i <=ch.length; i++)
{
printer("ch ["+i+"]="+ch[i]+";");
}
}
public static void function_del()
{
StringBuffer sb = new StringBuffer("abcdefg"); // sb.delete(0,sb.length()); //清空缓冲区. sb.delete(,); //删除缓冲区中字符串位置2到5的数据,不包含位置5.
printer(sb.toString());
// sb.delete(1,2);
sb.deleteCharAt(); //删除一个数据,等价于上面的代码: sb.delete(1,2); printer(sb.toString()); }
public static void function_add()
{
StringBuffer sb = new StringBuffer();
sb.append("abc").append("def").append(true).append(); //StringBuffer sb1 = sb.append(34); sb.insert(,"QQQ"); //将字符串"QQQ"从位置1中插入到缓冲区的数据中. // sb.insert(100,"QQQ"); 编译的时候会出现角标越界的异常.
//printer("sb==sb1?:"+(sb==sb1)); printer(sb.toString());
//printer(sb1.toString());
} public static void printer(String str)
{
System.out.println(str);
}
}
JDK1.5版本以后出现了StringBuilder
StringBuffer是线程同步.
StringBuidlder是线程不同步,单线程的时候效率高.快捷.
以后开发建议使用StringBuilder.
JDK升级一般三个方面:
1.提高效率2.提高安全性简化书写
基础数据类型对象包装类:
小写是基本数据类型 大写开头是类
int Integer
byte Byte
float Float
double Double
boolean Boolean
char Character
short Short
long Long
1.获取整型变量的最大值: Integer.MAX_VALUE
例如:printer("int max = "+Integer.MAX_VALUE);
最常见应用为:
将基本数据类型转成字符串.
方法1: 基本数据类型+””
方法2: 基本数据类型类.toString(基本数据类型)
例如: Integer.toString(34); 将整数34转成字符串类型的”34”.
将字符串转成基本数据类型
将一个字符串转成整数:
(静态调用方式)
Integer.parseInt(“32”); 将字符串”32”转成整数 32.
格式为:
xxx a = Xxx.parseXxx(String);
例如: int a = Integer.parseInt(“123”);
非静态方法转换 (对象调用方式)
Integer a = new Integer(“123”);
int num = a.intValue();
进制之间转换:
十进制转成其他进制:
Integer.toBinayString(要转的数); //转成二进制
Integer.toHexString(要转的数); //转成十六进制
Integer.toOctalString(要转的数); //转成八进制
其他进制转成十进制:
格式:
xxx a = Xxx.parseXxx(要转换的数,要转的进制)
例如: int a = Integer.parseInt(“110”,2); 将110用二进制转成十进制数.
括号中的数和转换的进制需要相互对应.不然的话编译会有异常发生.
相关的简单代码实例:
class IntegerDemo
{
public static void main(String args[])
{
//获取整型变量的最大值
printer("int max = "+Integer.MAX_VALUE); int num = Integer.parseInt(""); //将字符串"123"转成整数123.
num = num +; //将整数4和整数123先加
printer("num ="+num); //输出的结果为127. printer(Integer.toBinaryString(-));//将十进制数转成二进制数
printer(Integer.toHexString()); //将十进制数转成十六进制数
printer(Integer.toOctalString()); //将十进制数转成八进制数 int a = Integer.parseInt("",); //将二进制数110按2进制转换成十进制数 // 二进制数110对应的十进制数是6.
printer("a="+a); //结果a=6. } public static void printer(String str)
{
System.out.println(str);
} }
class IntegerDemo1
{
public static void main(String args[])
{
//function();
//Integer a = new Integer(4);
Integer a = ; //自动装箱
a=a+; //a+2中的a相当于做了a.intValue()操作,a自动拆箱变成了int类型.然后和2进行运算,在将和进行自动的装箱操作赋值给a.
printer("a="+a); Integer x = ;
Integer y = ;
printer("x==y:?"+(x==y)); //结果是false. Integer m = ;
Integer n = ;
printer("m==n:?"+(m==n)); //结果为true. m 和n指向的是同一个Integer对象
//因为当数值在byte范围之内的时候,对于JDK1.5以后的新版本,如果该数值已经存在,不会在开辟新的空间. }
public static void function()
{
Integer x = new Integer("");
Integer y = new Integer();
printer("x==y:?"+(x==y));
printer("x.equals(y):?"+x.equals(y));
}
public static void printer(String str)
{
System.out.println(str);
} }
Java基础笔记-String类2的更多相关文章
- Java基础笔记-String类
String 类(被final修饰) 字符串是一种特殊的对象,一旦字符串被初始化就不可以被改变了.(内容不变) 例如: String s = “abc”; String s1 = new Stri ...
- Java基础之String类
String类 字符串是不可变的,对其做的任何改变,会生成一个对象,不会改变有原有对象. ==和equals() String s1 = "good"; String s2 = & ...
- Java基础教程——String类
String类 Java程序中的所有字符串字面值(如 "abc" )都是String的实例 字符串是常量(因为 String 对象是不可变的,所以可以共享) 字符串的本质是字符数组 ...
- Java 基础之 String 类
String String 被声明为 final,因此不能被继承.(Integer 等包装类也不能被继承) 在 java8 中,String 内部使用 char 数组 来存储数据 public fin ...
- java学习笔记 --- String类
一.定义 就是由多个字符组成的一串数据.也可以看成是一个字符数组. 注意: 1.字符串是常量:它们的值在创建之后不能更改.为什么? 意思就是说字符串确定了,就会在常量池中生成这个字符串. 所以说它的值 ...
- Java学习笔记——String类常用方法
所谓的字符串就是对数组的包装,所以字符串内容无法进行更改.String在JDK1.8以前保存的是字符数组:private final char value[]; 而在JDK1.9之后保存的是字节数组: ...
- Java入门 - 语言基础 - 14.String类
原文地址:http://www.work100.net/training/java-string.html 更多教程:光束云 - 免费课程 String类 序号 文内章节 视频 1 概述 2 创建字符 ...
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错
原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...
随机推荐
- Tomcat部署项目的几种常见方式
以前学习的时候只知道在Eclipse或者MyEclipse中发布项目到Tomcat,最近实习时发现不同的项目还有不同的发布方式,所以特地学习了Tomcat发布项目的方式,在此记录下来. 1 直接将we ...
- Error Correct System(模拟)
Error Correct System Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I ...
- andorid 控件 Bootstrap3.0风格的控件 精美UI控件库
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包.它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架.Bootstra ...
- vs2012 设计器 视图异常
WPF 开发/(其他xaml app 的开发) 的时候 设计视图功能非常方便 不过有时候经常遇到 设计器加载失败的情况,原因很多 很多时候是代码问题导致,设计器无法展现视图,也有sliverlig ...
- ffmpeg推rtmp流到crtmpserver直播
1. 项目需要使用ffmpeg推rtmp流至crtmpserver,然后直播./usr/bin/ffmpeg -re -loop 1 -i tmp/234.jpg -r 10 -f flv rtmp: ...
- Spring 之 注解详解
概述 注释配置相对于 XML 配置具有很多的优势: 它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作.如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO ...
- 给小班讲stl 之 map、sort、优先队列
引子:最近老师让给小班讲课,讲stl,,但是我觉得就小班现在这水平根本讲不懂好不好,,,,
- const参数,const返回值与const函数
在C++程序中,经常用const 来限制对一个对象的操作,例如,将一个变量定义为const 的: const int n=3; 则这个变量的值不能被修改,即不能对变量赋值. const 这个关键字 ...
- mysql 建表、查表、查表结构
进入数据库: mysql> use sunshine_blog;输出: Database changed 查数据库表: mysql> show tables;输出: +---------- ...
- Python Tkinter canvas oval原理
Ovals, mathematically, are ellipses, including circles as a special case. The ellipse is fit into a ...