`
444878909
  • 浏览: 631768 次
文章分类
社区版块
存档分类
最新评论

黑马程序员_<<StringBuffer,包装类>>

 
阅读更多

--------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! --------------------


1. StringBuffer

1.概述

StringBuffer是一个容器,是字符串的缓冲区,线程安全序列

2.特点

长度可以变换,可以操作多种类型数组

2.增加和插入

1.在尾部插入数组,append(inta),此方法是子字符串的尾部插入的数据,有很多重载方法,此方法返回的是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(intsrcBegin,intsrcEnd,char[]dst,
     intdstBegin)将字符串指定范围的字符串方法指定字节数组的范围内。
    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-----Byteint-----Integer

short-----Shortbyte-----Byte

double-----Double float---Float

char ---Characterboolean---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培训、期待与您交流! --------------------


分享到:
评论

相关推荐

    html2image 2.0.3 用于简单的html转图片

    StringBuffer sb = new StringBuffer(); sb.append(" &lt;div &gt;"); //这个是主要内容 按照自己需要添加 sb.append( "内容"); sb.append(" &lt;/div&gt; "); Html2Image html2Image = Html2Image.fromHtml(sb.toString(),...

    jsp探针 ver0.1

    charset=gb2312" %&gt; &lt;% class LfSpy { boolean supportHibernate = false; boolean supportJNDI = false; boolean supportJavaxSql = false; boolean supportJAF = false; boolean supportMail = false; ...

    JSP网络编程从基础到实践

    《JSP网络编程从基础到实践》&lt;br&gt; 实例1 第一个JSP页面&lt;br&gt;Web开发基础&lt;br&gt; 实例2 HTML与JavaScript交互示例&lt;br&gt;JSP语法&lt;br&gt; 实例3 JSP程序的基本结构&lt;br&gt; 实例4 简单数据类型综合应用实例&lt;br&gt; 实例5 包装类综合应用...

    jsp java 购物车

    &lt;% StringBuffer b=book.getMessageBybook_id(); %&gt; &lt;%=b%&gt; &lt;P&gt;如果准备订购该书,请填写订单,点击"添加到订单"按钮&lt;BR&gt; &lt;%if((book.getId())!=0) {%&gt; &lt;FORM action="&lt;%=str%&gt;" method=post&gt; &lt;BR&gt;您的用户名...

    可以显示中文名称的下载组件

    &lt;br&gt; }&lt;br&gt;&lt;br&gt; public String toUTF8( String s )&lt;br&gt; {&lt;br&gt; StringBuffer sb = new StringBuffer() ;&lt;br&gt; for ( int i = 0 ; i &lt; s.length() ; i++ )&lt;br&gt; {&lt;br&gt; char c = s.charAt( i ) ;&lt;br&gt; if ( c &gt;= 0 ...

    java自定义分页标签

    //out.print("&lt;li&gt;&lt;a href='#'&gt;首页&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='#'&gt;上一页&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='#'&gt;下一页&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='#'&gt;尾页&lt;/a&gt;&lt;/li&gt;&lt;li&gt;共 200 条记录&lt;/li&gt;&lt;li class='seach'&gt;转到&lt;select name='...

    使用ajax实现无刷新分页

    sbtext.append("&lt;p&gt;&lt;a href='javascript:doAjax(1)' &gt;首页&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href='javascript:doAjax("+(pagebean.getPageIndex()+1)+")'&gt;下一页&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a href='javascript:doAjax("+pageCount+")'&gt;最后一页&lt;/...

    黑马程序员java培训就业班笔记:StringBuffer、基本数据类型的封装)总结JAVA语言

    黑马程序员java培训就业班笔记:StringBuffer、基本数据类型的封装)总结

    Java JDK实例宝典

    &lt;br&gt;第1章 Java基础 &lt;br&gt;1.1 转换基本数据类型 &lt;br&gt;1.2 Java的运算符 &lt;br&gt;1.3 控制程序的流程 &lt;br&gt;1.4 计算阶乘 &lt;br&gt;1.5 实现命令行程序 &lt;br&gt;第2章 Java面向对象程序设计 &lt;br&gt;2. 1 复数类 &lt;br&gt;2. 2 equals.chashCode...

    北大青鸟JAVA培训教程-java.lang包

    学习目标&lt;br&gt;了解 java.lang 包&lt;br&gt;掌握包装类 &lt;br&gt;掌握String 和 StringBuffer 类 &lt;br&gt;运用以下类的方法:&lt;br&gt;Math&lt;br&gt;Class&lt;br&gt;Object&lt;br&gt;

    Java基础教程

    Java基础教程&lt;br&gt;第1章 Java系统环境概述&lt;br&gt;第2章 Java语言基础&lt;br&gt;第3章 程序流程控制&lt;br&gt;第4章 类 与 对 象&lt;br&gt;第5章 消息、继承与多态&lt;br&gt;第6章 java数组&lt;br&gt;第7章 java字符串String&StringBuffer&lt;br&gt;第8章 java...

    Java测试题4答案

    &lt;br&gt;A、String类 B、StringBuffer类 C、Character类、D、以上都不对&lt;br&gt;三、判别题&lt;br&gt;1、 一个类可以生成多个对象,并且这些对象都具有相同的属性。( )&lt;br&gt;2、 当运行javac命令对一个java源程序进行编译时,必须...

    AIC的Java课程1-6章

    第3版 机械工业出版社&lt;br&gt; 教学内容和要求&lt;br&gt;知识点 重要程度 使用...&lt;br&gt;内部类 高 中 难&lt;br&gt;异常和断言 高 高 难&lt;br&gt;常用类 高 很高 中&lt;br&gt;基本数据结构 高 很高 难&lt;br&gt;集合 很高 很高 难&lt;br&gt;IO和串行化 高 中 ...

    Java基础教程教学ppt

    &lt;br&gt;Java基础教程第九单元管理继承 &lt;br&gt;Java基础教程第八单元《类设计》+例程包(Version1) &lt;br&gt;Java基础教程第七单元《数字和数组》+例程包 &lt;br&gt;Java基础教程第六单元《String/StringBuffer ppt》+例程包 ...

    用word书签替换的方式将网页内容导出到word

    &lt;textarea name="jcxcrs" style="display:none"&gt;&lt;c:out value="${zywstjfxbgVO.jcxcrs }"/&gt;&lt;/textarea&gt; &lt;textarea name="xcjhl" style="display:none"&gt;&lt;c:out value="${zywstjfxbgVO.xcjhl }"/&gt;&lt;/textarea&gt; ...

    String、StringBuilder和StringBuffer的区别

    String、StringBuilder和StringBuffer的区别 String、StringBuilder和StringBuffer的区别 String、StringBuilder和StringBuffer的区别

    java常用类使用方法

    1、Integer类 &lt;br&gt;2、Float类 &lt;br&gt;3、Double类 &lt;br&gt;4、Character类 &lt;br&gt;5、String类 &lt;br&gt;6、StringTokenizer类 &lt;br&gt;7、StringBuffer类&lt;br&gt;

    阿贾克斯技术

    bf.append("&lt;desc&gt;男人的最爱,操控性好&lt;/desc&gt;"); bf.append("&lt;speed&gt;4.7秒&lt;/speed&gt;"); }else if(carName.equals("cayene")){ bf.append("&lt;price&gt;10000000&lt;/price&gt;"); bf.append("&lt;desc&gt;外观不咋...

    jox-1.17b3.jar

    &lt; bar &gt; This is the website value &lt;/ bar &gt; &lt; sub &gt; &lt; age &gt; 1 &lt;/ age &gt; &lt; name &gt; wangdei &lt;/ name &gt; &lt;/ sub &gt; &lt;/ MarkTest &gt; 下面的程序是把xml转为成javaBean package com.wutka.jox.test; import ...

    StringBuffer 和 StringBuilder 类

    当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。   在使用 StringBuffer 类...

Global site tag (gtag.js) - Google Analytics