A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始


  1. /***
  2. *  将一个数组转换成字符串
  3. *  分析:将一个数组转换成字符串  数组是没有直接的方法转换成字符串的  如果遍历数组 取出第一个元素 toString 的话会产生太多的
  4. *  垃圾 如果用StringBuffer  就只产生一个对象,不会产生太多的垃圾推荐用StringBuffer
  5. * @author hu
  6. * @version V1.0我也不知道
  7. */
  8. public class DemoStringBuffer_ArrayToString {
  9. /**
  10.   * @param args
  11.   */
  12. public static void main(String[] args) {
  13.   int [] arr = {12,15,18,22};//静态初使化一个数组
  14.   
  15.   //使用方法测试
  16.   //arryToString(arr);
  17.   System.out.println(arryToString(arr));
  18. }
  19. //封装一个方法 把数组转换成StringBuffer  在遍历数组的同时候 用append 向字符缓冲区里添加 数组的元素 然后用toString方法
  20. //转换成 字符串 返回值是String  参数列表是  一个数组
  21. /**
  22.   *
  23.   * @param arr 要接收的int 类型的数组
  24.   * @return for遍历过程中追加的 数组的元素 存到字符串缓冲区StringBuffer.toString()
  25.   */
  26. public static String arryToString(int [] arr) {
  27.   
  28.   //因为要按规定的格式输入转换后的数组
  29.   StringBuffer sb = new StringBuffer();//创建一个字符串缓冲区对象
  30.   sb.append("[");//在遍历数组之前先把左括号 打印出来
  31.   for (int i = 0; i < arr.length; i++) {
  32.    //这里我们在加一个判断  也就是 如果是数组最后个元素的话  则把右括号  也追加
  33.    if (i==arr.length-1) {//这里不要忘记了 -1 只有减去了1 i才代表是数组中的最后一个元素不然的话这个语句
  34.     //永远执行不到
  35.     sb.append(arr[i]).append("]");
  36.    
  37.    }
  38.    else {
  39.    
  40.     sb.append(arr[i]).append(",");
  41.    }
  42.   }//出了循环我们把得到的字符串缓冲区toString 转换成 字符串
  43.   
  44.   
  45.   
  46.   return sb.toString();
  47. }
  48. }


复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马