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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 酷我之情 中级黑马   /  2016-8-21 23:23  /  467 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.heima.string;

public class Demo3_String {

        /**
         * * 1.判断定义为String类型的s1和s2是否相等
                        * String s1 = "abc";
                        * String s2 = "abc";
                        * System.out.println(s1 == s2);                                        
                        * System.out.println(s1.equals(s2));                
                * 2.下面这句话在内存中创建了几个对象?
                        * String s1 = new String("abc");                       
                * 3.判断定义为String类型的s1和s2是否相等
                        * String s1 = new String("abc");                       
                        * String s2 = "abc";
                        * System.out.println(s1 == s2); ?                       
                        * System.out.println(s1.equals(s2)); ?       
                * 4.判断定义为String类型的s1和s2是否相等
                        * String s1 = "a" + "b" + "c";
                        * String s2 = "abc";
                        * System.out.println(s1 == s2); ?                       
                        * System.out.println(s1.equals(s2)); ?       
                * 5.判断定义为String类型的s1和s2是否相等
                        * String s1 = "ab";
                        * String s2 = "abc";
                        * String s3 = s1 + "c";
                        * System.out.println(s3 == s2);
                        * System.out.println(s3.equals(s2)); ?       
                         */
        public static void main(String[] args) {
                //demo1();
                //demo2();
                //demo3();
                //demo4();
                String s1 = "ab";
                String s2 = "abc";
                String s3 = s1 + "c";
                System.out.println(s3 == s2);                        //false
                System.out.println(s3.equals(s2));                 //true
        }

        private static void demo4() {
                //byte b = 3 + 4;                                                //在编译时就变成7,把7赋值给b,常量优化机制
                String s1 = "a" + "b" + "c";
                String s2 = "abc";
                System.out.println(s1 == s2);                         //true,java中有常量优化机制       
                System.out.println(s1.equals(s2));                 //true
        }

        private static void demo3() {
                String s1 = new String("abc");                        //记录的是堆内存对象的地址值               
                String s2 = "abc";                                                //记录的是常量池中的地址值
                System.out.println(s1 == s2);                         //false
                System.out.println(s1.equals(s2));                 //true
        }

        private static void demo2() {
                //创建几个对象
                //创建两个对象,一个在常量池中,一个在堆内存中
                String s1 = new String("abc");               
                System.out.println(s1);
        }

        private static void demo1() {                                //常量池中没有这个字符串对象,就创建一个,如果有直接用即可
                String s1 = "abc";
                String s2 = "abc";
                System.out.println(s1 == s2);                         //true       
                System.out.println(s1.equals(s2));                 //true
        }

}

3 个回复

倒序浏览
总结的这几道题不错
回复 使用道具 举报
不错不错 值得学习下
回复 使用道具 举报
有例题,挺好的,要好好学习一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马