当前位置:   article > 正文

java笔试题目——要求:仅打印出a=100,b=200,请写出method方法的代码_需要在method方法被调用之后,仅打印出a=100,b=100

需要在method方法被调用之后,仅打印出a=100,b=100
  1. //题目:
  2. public class Test {
  3. public static void main (String[] args){
  4. int a = 10;
  5. int b = 10;
  6. method(a,b); //需要在method方法被调用之后,仅打印出a=100,b=200,请写出method方法的代码。
  7. System.out.println("a="+a);
  8. System.out.println("b="+b);
  9. }
  10. //代码编写处
  11. }

方法一:

  1. public static void method(int a,int b){
  2. //在不改变原题目的情况下如何写这个函数才能在main 函数中输出a=100,b=200?
  3. a= a*10;
  4. b= b*20;
  5. System.out.println(a);
  6. System.out.println(b);
  7. System.exit(0);
  8. }
  9. // 解析 static void exit (int status)___Terminates the currently running java Virtual Machine 输入0_____终止当前jvm的执行

方法二:

  1. public static void method ( int a ,int b){
  2. //把System.out.println()打印流重置
  3. PrintStream ps = new PrintStream(System.out){
  4. @Override
  5. public void println(String x){
  6. if("a=10".equals(x)){
  7. x="a=100";
  8. }
  9. else if("b=10".equals(x)){
  10. X= "b=200";
  11. }
  12. super.println(x);
  13. }
  14. };
  15. System.setOUt(ps);
  16. }

 

题目二:

 

 

 

 

题目三:

  1. int[] arr = new int[10];
  2. System.out.println(arr); //这里该输出什么? 大多数人答案是: 地址值
  3. char[] arr1 = new char[10];
  4. System.out.println(arr1); //这里该输出什么? 大多数人的答案是:地址值

 

  1. //做个demo
  2. public class ArrayPrintTest{
  3. public static void main (String[] args) {
  4. int arr =new int[]{1,2,3};
  5. System.out.println(arr);//输出的确实是地址值
  6. char[] arr1 = new char[]{'a','b','c'};
  7. System.out.println(arr1);//输出的是abc
  8. }
  9. }

诡异的是,如果错了,面试官对你说了一句:你回去看看,

看?这时候看什么?书本都是按章节讲话,无从下手???是啊是啊/

 

用debug调试。

第一个输出用的是Object方法

第二个用的是用的是char类型,根本不是方法,当要输出方法体的时候,会给你遍历数组。

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

闽ICP备14008679号