zoukankan      html  css  js  c++  java
  • String类常见面试题1

    字符串类常见面试题

    1.判断定义为String类型的s1和s2是否相等

    1      String s1="abc";//常量池中没有这个对象就去创建,如果有就使用.
    2         String s2="abc";//第一次创建了,有对此对象,直接指向他
    3         System.out.println(s1==s2);//true
    4         System.out.println(s1.equals(s2));//true,字符串内容比较

    2.下面这句话在内存中创建了几个对象

    1      // 创建了两个对象,一个在常量池里,另一个在堆内存里;根据构造方法String(String original)可知,但两个对象的地址不同
    2         String s1 = new String("abc");
    3         System.out.println(s1);

    3.判断定义为String类型的s1和s2是否相等

    1      String str1=new String("abc");//记录的是堆内存里的对象地址
    2          String str2="abc";//记录的是常量池里的对象地址
    3          System.out.println(str1==str2);//false
    4          System.out.println(str1.equals(str2));//true

    4.判断定义为String类型的s1和s2是否相等

    1      String str1 = "a" + "b" + "c";
    2         String str2 = "abc";
    3         System.out.println(str1 == str2);// true,java中有常量优化机制
    4         System.out.println(str1.equals(str2));// true

    5.判断定义为String类型的s1和s2是否相等

    1         /*
    2          * Java 语言提供对字符串串联符号("+")以及将其他对象转换为字符串的特殊支持。 字符串串联是通过 StringBuilder(或
    3          * StringBuffer)类及其 append 方法实现的。 字符串转换是通过 toString 方法实现的.
    4          */
    5         String str1 = "ab";
    6         String str2 = "abc";
    7         String str3 = str1 + "c";
    8         System.out.println(str2 == str3);// false
    9         System.out.println(str2.equals(str3));// true                
  • 相关阅读:
    Centos系统下载
    Centos7 安装 docker
    Centos6 安装 docker
    yum提示Another app is currently holding the yum lock; waiting for it to exit...
    Oracle 时间字段显示不正确,类型错误
    Android 报错:error: too many padding sections on bottom border
    vs文件上传失败--超过最大字符限制
    ButterKnife 牛油刀使用
    VS项目发布到本地IIS
    Visual Studio无法调试
  • 原文地址:https://www.cnblogs.com/le-ping/p/7399741.html
Copyright © 2011-2022 走看看