栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

对线面试官day3-JAVA基础

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

对线面试官day3-JAVA基础

文章目录
  • 对线面试官day3-JAVA基础
    • 1.continue、break、和 return 的区别是什么?
    • 2.==和 equals 的区别?
    • 3. Java 中的几种基本数据类型是什么?

对线面试官day3-JAVA基础 1.continue、break、和 return 的区别是什么?

在循环结构中,当循环条件不满足或者循环次数达到要求时,循环会正常结束。但是,有时候可能需要在循环的过程中,当发生了某种条件之后 ,提前终止循环,这就需要用到下面几个关键词:

  1. continue :指跳出当前的这一次循环,继续下一次循环。

  2. break :指跳出整个循环体,继续执行循环下面的语句。

    return 用于跳出所在方法,结束该方法的运行。return 一般有两种用法:

  3. return; :直接使用 return 结束方法执行,用于没有返回值函数的方法

  4. return value; :return 一个特定值,用于有返回值函数的方法

2.==和 equals 的区别?

对于基本数据类型来说,==比较的是值。

对于引用数据类型来说,==比较的是对象的内存地址。

因为 Java 只有值传递,所以,对于 == 来说,不管是比较基本数据类型,还是引用数据类型的变量,其本质比较的都是值,只是引用类型变量存的值是对象的地址。(==就是比较值,基本数据类型比较值,引用数据类型比较存值对象地址)。

equals() 作用不能用于判断基本数据类型的变量,只能用来判断两个对象是否相等。equals()方法存在于Object类中,而Object类是所有类的直接或间接父类。

Object 类 equals() 方法:

public boolean equals(Object obj) {
     return (this == obj);
}

equals() 方法存在两种使用情况:

  • 类没有覆盖 equals()方法 :通过equals()比较该类的两个对象时,等价于通过“==”比较这两个对象,使用的默认是 Object类equals()方法。
  • 类覆盖了 equals()方法 :一般我们都覆盖 equals()方法来比较两个对象中的属性是否相等;若它们的属性相等,则返回 true(即,认为这两个对象相等)。(属性相等,两个对象就相等)

举个例子:

public class test1 {
    public static void main(String[] args) {
        String a = new String("ab"); // a 为一个引用
        String b = new String("ab"); // b为另一个引用,对象的内容一样
        String aa = "ab"; // 放在常量池中
        String bb = "ab"; // 从常量池中查找
        if (aa == bb) // true
            System.out.println("aa==bb");
        if (a == b) // false,非同一对象
            System.out.println("a==b");
        if (a.equals(b)) // true
            System.out.println("aEQb");
        if (42 == 42.0) { // true
            System.out.println("true");
        }
    }
}

说明:

  • String 中的 equals 方法是被重写过的,因为 Object 的 equals 方法是比较的对象的内存地址,而 String 的 equals 方法比较的是对象的值。
  • 当创建 String 类型的对象时,虚拟机会在常量池中查找有没有已经存在的值和要创建的值相同的对象,如果有就把它赋给当前引用。如果没有就在常量池中重新创建一个 String 对象。

String类equals()方法:

public boolean equals(Object anObject) {
    if (this == anObject) {
        return true;
    }
    if (anObject instanceof String) {
        String anotherString = (String)anObject;
        int n = value.length;
        if (n == anotherString.value.length) {
            char v1[] = value;
            char v2[] = anotherString.value;
            int i = 0;
            while (n-- != 0) {
                if (v1[i] != v2[i])
                    return false;
                i++;
            }
            return true;
        }
    }
    return false;
}
3. Java 中的几种基本数据类型是什么?

Java 中有 8 种基本数据类型,分别为:

  1. 6 种数字类型 :byte、short、int、long、float、double

  2. 1 种字符类型:char

  3. 1 种布尔型:boolean。

    这 8 种基本数据类型的默认值以及所占空间的大小如下:

    基本类型位数字节默认值
    int3240
    short1620
    long6480L
    byte810
    char162‘u0000’
    float3240f
    double6480d
    boolean1理论上1false
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/353233.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号