java常用类章节练习题

判断输出结果

public void testString(){

    String str1 = "尚硅谷";

    String str2 = "尚硅谷";

    String str3 = new String("尚硅谷");

    System.out.println(str1 == str2);//true

    System.out.println(str1 == str3);//false

    System.out.println(str1.equals(str3));//true

    str1 = "尚硅谷atguigu.com";

    String str4 = "atguigu.com";

    String str5 = "尚硅谷" + "atguigu.com";

    System.out.println(str1 == str5);//true

   

    String str6 = (str2 + str4).intern();

    System.out.println(str1 == str6);//false  ---->true

}

String s = new String("xyz");创建了几个String Object

答:两个,一个字符对象,一个字符对象引用对象

Math.round(11.5)等于多少? Math.round(-11.5)等于多少

答:  Math.round(11.5)==12;Math.round(-11.5)==-11;round方法返回与参数最接近的长整数,参数加1/2后求其floor

是否可以继承String类

答:String类是final类故不可以继承

String与StringBuffer的区别

答:String的长度是不可变的,StringBuffer的长度是可变的。如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法

如何将String类型转化Number类型?举例说明String str = “123”;

答任意一个都对:

         Integer num1 = new Integer(str);

        

         int num2 = Integer.parseInt(str);

        

         Integer num3 = Integer.valueOf(str);

下列程序运行的结果:

【面试题】

public class StringTest {

String str = new String("good");

char[] ch = { 't', 'e', 's', 't' };

public void change(String str, char ch[]) {

str = "test ok";

ch[0] = 'b';

}

public static void main(String[] args) {

StringTest ex = new StringTest();

ex.change(ex.str, ex.ch);

System.out.print(ex.str + " and ");//good and

System.out.println(ex.ch);//best

}

}

答:good and best

输出下面程序的结果:

public static void main(String[] args) {
    String a = "123";
    String b = "123";
    String c = new String("123");
    String d = new String("123");

    System.out.println(a.equals(b));//true
   
System.out.println(a == b);//true
   
System.out.println(c.equals(d));//true
   
System.out.println(c==d);//false
   
System.out.println(a.equals(c));//true
   
System.out.println(a==c);//false
}

答:true

true

true

false

true

false

每日一练

1. 什么是方法的重载?

“两同一不同”:同一个类、相同方法名;参数列表不同。

如何调用确定的方法:方法名à参数列表

2. 说明Java方法中的参数传递机制的具体体现?

基本数据类型:数据值

引用数据类型:地址值 (含变量的数据类型)

Person p1 =  new Person();  eat();age

User u1 = p1;//编译错误    (逆向思维、反证法)

u1.eat()  u1.age

3. 成员变量和局部变量在声明的位置上、是否有默认初始化值上、是否能有权限修饰符修饰上、内存分配的位置上有何不同?

答:成员变量:有默认初始化值,有权限修饰符,储存在堆内存的对象中

局部变量:必须先声明初始化值才能使用,没有权限修饰符,储存在栈内存的方法中

4. 谈谈return关键字的使用

① 结束方法  ② 针对于有返回值的方法,return + 返回数据

5. 提供如下代码的内存解析

1. 内存结构:栈(局部变量)、堆(new出来的结构:对象(非static成员变量)、数组)

2. 变量:成员变量  vs 局部变量(方法内、方法形参、构造器内、构造器形参、代码块内)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供一些 Java 接口练习题,供您练习和巩固相关知识。以下是一些题目: 1. 定义一个接口 Animal,包含方法 eat() 和 sleep(),同时定义一个实现该接口的 Dog 和 Cat。要求 Dog 和 Cat 实现 eat() 和 sleep() 方法,其中 eat() 方法输出 "I am a dog/cat, and I am eating",sleep() 方法输出 "I am a dog/cat, and I am sleeping"。 2. 定义一个接口 Shape,包含方法 getArea() 和 getPerimeter(),同时定义一个实现该接口的 Rectangle 和 Circle。要求 Rectangle 和 Circle 实现 getArea() 和 getPerimeter() 方法,其中 getArea() 方法返回形状的面积,getPerimeter() 方法返回形状的周长。 3. 定义一个接口 Calculator,包含方法 add()、subtract()、multiply() 和 divide(),同时定义一个实现该接口的 BasicCalculator 和 ScientificCalculator。要求 BasicCalculator 和 ScientificCalculator 实现 add()、subtract()、multiply() 和 divide() 方法,其中 BasicCalculator 实现的方法为简单的四则运算,ScientificCalculator 实现的方法为科学计算器常用的函数,例如 sin、cos、tan 等。 4. 定义一个接口 Sortable,包含方法 sort(),同时定义一个实现该接口的 BubbleSort 和 QuickSort。要求 BubbleSort 和 QuickSort 实现 sort() 方法,其中 BubbleSort 实现冒泡排序,QuickSort 实现快速排序。 希望这些题目能够帮助您巩固 Java 接口的相关知识。如果您有任何问题或需要更多帮助,请随时告诉我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值