当前位置:   article > 正文

Java 面向对象 探讨几道网红题目_java面向对象讨论题

java面向对象讨论题

第一题

第一题

方法一

public class Test {
    public static void main(String[] args) {
        int a=10;
        int b=10;
        method(a,b);//需要在method方法被调用之后,仅打印出a=100,b=20,请写出method方法的代码
        System.out.println("a="+a);
        System.out.println("b="+b);
    }
    //代码编写处
    //方法一
    public static void method(int a,int b) {
        a=a*10;
        b=b*20;
        System.out.println("a="+a);
        System.out.println("b="+b);
        System.exit(0);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

结果

方法二(琢磨)

import java.io.PrintStream;

public class Test {
    public static void main(String[] args) {
        int a = 10;
        int b = 10;
        method(a, b);//需要在method方法被调用之后,仅打印出a=100,b=20,请写出method方法的代码
        System.out.println("a=" + a);
        System.out.println("b=" + b);
    }

    //代码编写处
    //方法二
    public static void method(int a, int b) {
        PrintStream ps = new PrintStream(System.out)
        {
            @Override
            public void println(String x){
            if ("a=10".equals(x)) {
                x = "a=100";
            } else if ("b=10".equals(x)) {
                x = "b=200";
            }
            super.println(x);
        }
        };
        System.setOut(ps);
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

结果

第二题(微软)

题目
答案

方法一

public class Test {
    public static void main(String[] args) {
       int[] arr = new int[]{12,3,3,12,24,36,213,523};
       //方法一
       for(int i =arr.length-1;i>=0;i--){
           arr[i]=arr[i]/arr[0];
       }
        for (int i =0;i<=arr.length;i++){
            System.out.println(arr[i]);
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

结果

方法二

public class Test {
    public static void main(String[] args) {
       int[] arr = new int[]{12,3,3,12,24,36,213,523};
        //方法二
        int temp=arr[0];
        for(int i =0;i<arr.length;i++){
            arr[i]=arr[i]/temp;
        }
        for (int i =0;i<=arr.length;i++){
            System.out.println(arr[i]);
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

第三题

说明

示例一

public class ArrayPrintTest {
    public static void main(String[] args) {
        int[] arr=new int[]{1,2,3};
        System.out.println(arr);//地址值

        char[] arr1 = new char[]{'a','b','c'};
        System.out.println(arr1);//abc
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

结果
结果

示例二

public class ArrayPrintTest {
    public static void main(String[] args) {
        int[] arr=new int[10];
        System.out.println(arr);//地址值

        char[] arr1 = new char[10];
        System.out.println(arr1);//空的字符类
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

结果
结果
char和string 是值 int啥的是地址值

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/940309
推荐阅读
相关标签
  

闽ICP备14008679号