1。代码如下:
String str = “”;
     for(int i=0;i<100;i++){
           Str += i ;
           Str +=”,” ;
     }
System.out.pringln(str);2。关于TCP/IP协议下面哪几点是错误的
A、TCP/IP协议由TCP协议和IP协议组成
B、TCP和UDP都是TCP/IP协议传输层的子协议
C、Socket是TCP/IP协议的一部分
D、主机名的解析是TCP/IP的一部分

解决方案 »

  1.   

    1,用StringBuffer    字符串+=是很耗费资源的
      

  2.   

    1、用StringBuffer拼接;
    2、选A吧。
      

  3.   


    public class sstring
    {
    public static void main(String[] args){
    /*String str ="";
      for(int i=0;i<100;i++){
      str += i;
      str +=",";
      }
    System.out.println(str);*/ StringBuffer sb = new StringBuffer();

    for(int i=1;i<=100;i++){
    sb.append(i);
    sb.append(",");
    }
    System.out.println(sb);
    }
    }
      

  4.   

    呵呵,第二题目搞忘了,网上找找吧;第一题目,不晓得题目者使用什么JDK,如果1.5以上,那么使用StringBuilder对于局部变量的效率将会更加高于StringBuffer,代码几乎和三楼一致,不过它的区别就是append没有synchronied的消耗,其次,如果读过其源码就知道,默认长度为默认长度16个,预留空间如果空间不够花就增加1倍,然后将原有空间拷贝进来,所以为了不产生太多的临时空间,很多时候如果大致知道数组的长度,就预定义一个大致的长度,是较好的(其实用+很慢的的原因中其中一个很重要的原因就是因为产生太多的临时空间,而且大量的内存拷贝),类似100次操作,平均拼串除逗号外大部分是两位数,加上逗号,最多也就是300个字符,抛着一点算吧,256+128个字符,那么这样写代码,几乎就没有太多的大内存拷贝:StringBuilder stringBuilder = new StringBuilder(256+128);
    for(int i = 0 ; i < 100 ; i ++) {
      stringBuilder.append(i).append(",");
    }
    System.out.println(stringBuilder);
    付:如果是JDK1.5一下的版本或者这个变量是全局变量,请将StringBuilder换成StringBuffer。
      

  5.   


    更正下  java中没全局变量 这个词
      

  6.   


    1.个人认为可以用stringbuffer
    2.B
      

  7.   

    1题上如上解答
    2题
    选A,C
    对A:TCP/IP协议应该是指tcp/ip协议簇,包括tcp,ip,udp以及其他协议,
    对B:TCP/IP协议的传输层的协议包括tcp,udp,另外有个协议好像是两个协议优点的结合吧,翻书也没有找到;
    对C:socket只是一个通信方式,应该不属于TCP/IP协议簇;
    对D:主机名的解析用的是arp协议,属于TCP/IP协议范围;
      

  8.   

    StringBuilder使用,效率高,非同步的。
      

  9.   

    网上查看了下,TCP/IP协议确实是包括tcp,ip,udp以及其他协议,是不是代表就是由其组成呢?
      

  10.   

    答案都出来了, 我也顶下, 给楼主个建议.1. 用StringBuilder, 非线程安全的, 效率高, 适用于局部
    2. AC. (10楼说得很好)