• java刷题day 05


    一. 单选题:

    解析:

    • 5 >> 2 相当于 5除于2两次,等于1
    • >>> 表示无符号右移,高位用 0 填充,0001右移两位 0000,所以选A

     解析:作对这道题的关键是要理解Java的值传递,关于值传递和引用传递的解释如下:

    1. 值传递:是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
    2. 引用传递:是指在调用函数时将实际参数的地址直接传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。

            这道题中a、b(是引用的副本,Java中没有引用传递)传入operate()函数中,但最后a指向的对象的值发生了变化,而b指向的对象的值没有发生变化,这是因为x.append(y);改变了a指向的对象的值,而y=x;并没有改变b指向对象的值,指向将y指向了x所指向的对象(之前y和b指向同一个对象)。

    解析:在一个类的构造方法中调用这个类的其他构造方法,需要用this关键字

     解析:使用局部变量一定要初始化

     解析:float double long boolean 都不可以

     解析:

    A:只有public类类名要与文件名相同

    B:也可以是其他类

    D:不能包含多个 public类 

      解析:虽然try有return了,但finally一定会被执行,所以 return 的是 false

       解析:void 是java的关键字

        解析:传字符串是形参 数组是实参

     二、不定项选择

        解析:C:不是不可继承是不可重写

    三、编程题

    统计回文_牛客题霸_牛客网 (nowcoder.com)

     

    1. import java.util.Scanner;
    2. public class Main {
    3. public static void main(String[] args) {
    4. Scanner in = new Scanner(System.in);
    5. String str1 = in.nextLine();
    6. String str2 = in.nextLine();
    7. int count = 0;
    8. int len = str1.length();
    9. for(int i =0;i<=len;i++){
    10. StringBuffer str = new StringBuffer(str1);
    11. str.insert(i,str2);
    12. StringBuffer tmp = new StringBuffer(str);
    13. StringBuffer str5 = tmp.reverse();
    14. if(str5.toString().equals(str.toString())){
    15. count++;
    16. }
    17. }
    18. System.out.println(count);
    19. }
    20. }

    解题思路,把每种情况列出来,倒置后与倒置前相比,相等就是回文。

    连续最大和_牛客题霸_牛客网 (nowcoder.com)

    1. import java.util.Scanner;
    2. public class Main {
    3. public static int getMax(int a,int b) {
    4. return a>b? a:b;
    5. }
    6. public static void main(String[] args) {
    7. Scanner in = new Scanner(System.in);
    8. int size = in.nextInt();
    9. int[] ch = new int[size];
    10. for(int i = 0;i<size;i++){
    11. ch[i] = in.nextInt();
    12. }
    13. int sum = ch[0];
    14. int max = ch[0];
    15. for(int i=1;i<size;i++){
    16. sum = getMax(sum+ch[i],ch[i]);
    17. if(sum>max){
    18. max = sum;
    19. }
    20. }
    21. System.out.println(max);
    22. }
    23. }

  • 相关阅读:
    前端文件下载的打开方式
    代码格式化的使用
    拉格朗日插值法的推导
    mybatis之主键返回
    2024年华为OD机试真题- 手机App防沉迷系统-(C++)-OD统一考试(C卷D卷)
    虚拟局域网VLAN_基础知识
    官网下载 jdk1.7
    C语言入门Day_27 开发环境
    【Java】java | jvm | 分析cpu占用过高 | 分析jvm堆栈信息
    python调用c++版本dll06-返回数组结构体
  • 原文地址:https://blog.csdn.net/m0_65601072/article/details/128071802