分支结构 && 方法的创建和调用 && 方法递归 && 数组的创建和使用 && 类和对象的认识 && 内部类 && 认识继承

简介: 分支结构 && 方法的创建和调用 && 方法递归 && 数组的创建和使用 && 类和对象的认识 && 内部类 && 认识继承

第 1 题(编程题)

题目名称:

二进制1的个数。

题目内容:

求一个整数,在内存当中存储时,二进制1的个数。

第 2 题(编程题)

题目名称:

计算分数的值

题目内容:

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。

第 3 题(编程题)

题目名称:

水仙花数

题目内容:

求出0~n之间的所有“水仙花数”并输出。(“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本 身,如;153=1^3+5^3+3^3,则153是一个“水仙花数“。)

第 4 题(编程题)

题目名称:

打印 X 图形

题目内容:

https://www.nowcoder.com/practice/83d6afe3018e44539c51265165806ee4

第 5 题(编程题)

题目名称:

输出乘法口诀表

题目内容:

输出n*n的乘法口诀表,n由用户输入。

第 6 题(编程题)

题目名称:

输出一个整数的每一位

题目内容:

输出一个整数的每一位,如:123的每一位是3,2,1

第 7 题(编程题)

题目名称:

模拟登陆

题目内容:

编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输 入,最多输入三次。三次均错,则提示退出程序

第 8 题(编程题)

题目名称:

二进制序列

题目内容:

获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列

第 1 题(编程题)

题目名称:

使用函数求最大值

题目内容:

创建方法求两个数的最大值max2,随后再写一个求3个数的最大值的函数max3。

要求:在max3这个函数中,调用max2函数,来实现3个数的最大值计算

第 2 题(编程题)

题目名称:

求 N 的阶乘 。

题目内容:

求 N 的阶乘 。

第 3 题(编程题)

题目名称:

求阶乘和

题目内容:

求1!+2!+3!+4!+........+n!的和

第 4 题(编程题)

题目名称:

斐波那契数列

题目内容:

求斐波那契数列的第n项。(迭代实现)

第 5 题(编程题)

题目名称:

求和的重载

题目内容:

在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码,求出结果

第 6 题(编程题)

题目名称:

求最大值方法的重载

题目内容:

在同一个类中定义多个方法:要求不仅可以求2个整数的最大值,还可以求3个小数的最大值?

第 1 题(编程题)

题目名称:

递归求 N 的阶乘

题目内容:

递归求 N 的阶乘

第 2 题(编程题)

题目名称:

递归求和

题目内容:

递归求 1 + 2 + 3 + ... + 10

第 3 题(编程题)

题目名称:

递归打印数字的每一位

题目内容:

按顺序打印一个数字的每一位(例如 1234 打印出 1 2 3 4) (递归)

第 4 题(编程题)

题目名称:

返回的数字之和

题目内容:

写一个递归方法,输入一个非负整数,返回组成它的数字之和

第 5 题(编程题)

题目名称:

递归求斐波那契数列的第 N 项

题目内容:

递归求斐波那契数列的第 N 项

第 6 题(编程题)

题目名称:

递归求解汉诺塔问题

题目内容:

递归求解汉诺塔问题

第 7 题(编程题)

题目名称:

创建的数组,并且赋初始值

题目内容:

创建一个 int 类型的数组, 元素个数为 100, 并把每个元素依次设置为 1 - 100

第 8 题(编程题)

题目名称:

打印数组

题目内容:

实现一个方法 printArray, 以数组为参数, 循环访问数组中的每个元素, 打印每个元素的值.

第 1 题(编程题)

题目名称:

改变原有数组元素的值

题目内容:

实现一个方法 transform, 以数组为参数, 循环将数组中的每个元素 乘以 2 , 并设置到对应的数组元素上. 例如 原数组为 {1, 2, 3}, 修改之后为 {2, 4, 6}

第 2 题(编程题)

题目名称:

求数组的平均值

题目内容:

实现一个方法 avg, 以数组为参数, 求数组中所有元素的平均值(注意方法的返回值类型).

第 3 题(编程题)

题目名称:

奇数位于偶数之前

题目内容:

调整数组顺序使得奇数位于偶数之前。调整之后,不关心大小顺序。

如数组:[1,2,3,4,5,6]

调整后可能是:[1, 5, 3, 4, 2, 6]

第 4 题(编程题)

题目名称:

二分查找

题目内容:

给定一个有序整型数组, 实现二分查找

第 5 题(编程题)

题目名称:

两数之和

题目内容:

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

示例 1:

输入:nums = [2,7,11,15], target = 9

输出:[0,1]

解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

第 6 题(编程题)

题目名称:

只出现一次的数字

题目内容:

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

示例 1:

输入: [2,2,1]

输出: 1


示例 2:

输入: [4,1,2,1,2]

输出: 4


第 7 题(编程题)

题目名称:

多数元素

题目内容:

给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在多数元素

示例 1:

输入:[3,2,3]

输出:3


示例 2:

输入:[2,2,1,1,1,2,2]

输出:2


第 8 题(编程题)

题目名称:

存在连续三个奇数的数组

题目内容:

给你一个整数数组 arr,请你判断数组中是否存在连续三个元素都是奇数的情况:如果存在,请返回 true ;否则,返回 false

示例 1:

输入:arr = [2,6,4,1]

输出:false

解释:不存在连续三个元素都是奇数的情况。

示例 2:

输入:arr = [1,2,34,3,4,5,7,23,12]

输出:true

解释:存在连续三个元素都是奇数的情况,即 [5,7,23] 。

第 1 题(单选题)

题目名称:

下面代码的运行结果是()

public static void main(String[] args){
  String s;
  System.out.println("s="+s);
}

题目内容:

A .代码编程成功,并输出”s=”

B .代码编译成功,并输出”s=null”

C .由于String s没有初始化,代码不能编译通过。

D .代码编译成功,但捕获到NullPointException异常

第 2 题(单选题)

题目名称:

阅读如下代码。 请问,对语句行 test.hello(). 描述正确的有()

package NowCoder;
class Test {
  public static void hello() {
      System.out.println("hello");
  }
}
public class MyApplication {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Test test=null;
    test.hello();
  }
}

题目内容:

A .能编译通过,并正确运行

B .因为使用了未初始化的变量,所以不能编译通过

C .以错误的方式访问了静态方法

D .能编译通过,但因变量为null,不能正常运行

第 3 题(单选题)

题目名称:

如下代码的输出结果是什么?

public class Test { 
    public int aMethod(){
        static int i = 0;
        i++; 
        return i;
    } 
public static void main(String args[]){
    Test test = new Test(); 
    test.aMethod(); 
    int j = test.aMethod();
    System.out.println(j);
    } 
}

题目内容:

A .0

B .1

C .2

D .编译失败

第 4 题(单选题)

题目名称:

当你编译和运行下面的代码时,会出现下面选项中的哪种情况?

public class Pvf{
    static boolean Paddy;
    public static void main(String args[]){
        System.out.println(Paddy);
    }
}

题目内容:

A .编译时错误

B .编译通过并输出结果false

C .编译通过并输出结果true

D .编译通过并输出结果null

第 5 题(单选题)

题目名称:

已知如下类说明:

public class Test{
  private float f=1.0f;
  int m=12;
  static int n=1;
  public static void main(String args[]){
    Test t=new Test();
  }
}

如下哪些在main函数中使用是正确的()

题目内容:

A .t.f = 3.0

B .this.n

C .Test.m

D .Test.n

第 6 题(单选题)

题目名称:

下面哪一项不是 java 类访问控制关键字

题目内容:

A .public

B .this

C .private

D .protected

第 7 题(单选题)

题目名称:

关于以下程序代码的说明正确的是()

public class HasStatic {// 1
  private static int x = 100;// 2
  public static void main(String args[]) {// 3
    HasStatic hsl = new HasStatic();// 4
    hsl.x++;// 5
    HasStatic hs2 = new HasStatic();// 6
    hs2.x++;// 7
    hsl = new HasStatic();// 8
    hsl.x++;// 9
    HasStatic.x--;// 10
    System.out.println(" x=" + x);// 11
  }
}

题目内容:

A .程序通过编译,输出结果为:x=102

B .程序通过编译,输出结果为:x=103

C .10行不能通过编译.因为x星私有静态变量

D .5行不能通过编译.因为引用了私有静态变量

第 8 题(单选题)

题目名称:

以下哪项说法是正确的?

题目内容:

A .public关键字只能修饰类名

B .public关键字只能修饰方法

C .public关键字只能修饰成员变量

D .以上说法都不对

第 9 题(单选题)

题目名称:

以下代码在编译和运行过程中会出现什么情况

public class TestDemo{
  private int count;
  public static void main(String[] args) {
    TestDemo test=new TestDemo(88);
    System.out.println(test.count);
  }
   TestDemo(int a) {
     count=a;
  }
}

题目内容:

A .编译运行通过,输出结果是88

B .编译时错误,count变量定义的是私有变量

C .编译时错误,System.out.println方法被调用时test没有被初始化

D .编译和执行时没有输出结果

第 10 题(单选题)

题目名称:

public class Test{
    static int cnt = 6;
    static{
        cnt += 9;
    }
    public static void main(String[] args){
        System.out.println("cnt = " + cnt);
    }
    static{
        cnt /=3;
    };
}

cnt的值是( )

题目内容:

A .cnt=5

B . cnt=2

C .cnt=3

D .cnt=6

第 11 题(单选题)

题目名称:

关于包的说法, 下列错误的是:( )

题目内容:

A .包是一组类的集合

B .包能防止类的名字冲突

C .import 语句能够导入一个指定的包

D .import static 能够导入一些静态方法

第 12 题(单选题)

题目名称:

在JAVA中,假设A有构造方法A(int a),则在类A的其他构造方法中调用该构造方法和语句格式应该为()

题目内容:

A .this.A(x)

B .this(x)

C .super(x)

D . A(x)

第 13 题(编程题)

题目名称:

修改Data类的定义

题目内容:

描述

现有一个Data类,内部定义了属性x和y,在main方法中实例化了Data类,并计算了data对象中x和y的和。但是,Data类的定义存在错误,请你将这些错误修正过来,使得main方法中的求和逻辑可以正常执行。

输入描述:

两个整数

输出描述:

两个整数的和

示例1

输入:

1 2


复制

输出:

3


代码如下:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            Data data = new Data(x, y);
            System.out.println(data.getX() + data.getY());
        }
    }
}
class Data {
    private int x;
    private int y;
    private Data(int x, int y) {
        x = x;
        y = y;
    }
    private int getX() {
        return x;
    }

第 1 题(单选题)

题目名称:

给定以下代码:

class Test{ 
  public String toString() {
    System.out.print("aaa");
    return "bbb";
  }
}
public static void main(String[] args) {
    Test test = new Test();
  System.out.println(test);
}

程序输出结果为:

题目内容:

A .aaa

B .bbb

C .aaabbb

D .bbbaaa

第 1 题(单选题)

题目名称:

在 java 中,一个类可同时定义为许多同名的方法,这些方法的形式参数个数,类型或顺序各不相同,传回的值可能各不相同,这种面向对象的特性称为()

题目内容:

A .隐藏

B .重写

C .重载

D .无此特性

第 2 题(单选题)

题目名称:

以下说法, 描述错误的是:

题目内容:

A .重载要求两个方法名字相同, 但是参数的类型和个数不同, 不要求返回值类型相同

B .重写要求两个方法名字相同, 同时参数的类型和个数相同, 不要求返回值类型相同

C .重写的方法可以使用 @Override 注解来修饰

D .父类的方法为 private 的时候, 子类方法不能进行重写.

第 3 题(单选题)

题目名称:

class B {
    public int Func() {
        System.out.print("B");
        return 0;
    }
}
class D extends B {
    @Override
    public int Func() {
        System.out.print("D");
        return 0;
    }
}
public class Test {
    public static void main(String[] args) {
        B a = new B();
        B b = new D();
        a.Func();
        b.Func();
    }
}

以上代码输出结果为:

题目内容:

A .BD

B .DB

C .BB

D .DD

E .编译出错

第 4 题(单选题)

题目名称:

以下代码运行输出的是

public class Person{
  private String name = "Person";
  int age=0;
}
public class Child extends Person{
  public String grade;
  public static void main(String[] args){
    Person p = new Child();
    System.out.println(p.name);
  }
}

题目内容:

A .输出:Person

B .没有输出

C .编译出错

D .运行出错

第 5 题(单选题)

题目名称:

以下代码运行输出的是

public class Person{
  private String name = "Person";
  int age=0;
}
public class Child extends Person{
  public String grade;
  public static void main(String[] args){
    Person p = new Child();
    System.out.println(p.name);
  }
}

题目内容:

A .输出:Person

B .没有输出

C .编译出错

D .运行出错

第 6 题(单选题)

题目名称:

A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:

1. A a0=new A();

2. A a1=new B();

3. A a2=new C();

问以下哪个说法是正确的?()

题目内容:

A .只有第一行能通过编译

B .第1、2行能通过编译,但第3行编译出错

C .第1、2、3行能通过编译,但第2、3行运行时出错

D .第1行,第2行和第3行的声明都是正确的

第 7 题(单选题)

题目名称:

如下代码的 结果是什么 ?

class Base {
  Base() {
    System.out.print("Base"); 
  }
}
public class Alpha extends Base {
  public static void main( String[] args ) {
    new Alpha();//1
    //调用父类无参的构造方法
    new Base();//2
  } 
}

题目内容:

A .Base

B .BaseBase

C .编译失败

D .代码运行但没有输出

E .运行时抛出异常

第 8 题(单选题)

题目名称:

以下程序的输出结果为

class Base{
  public Base(String s){
    System.out.print("B");
  }
}
public class Derived extends Base{
  public Derived (String s) {
    System.out.print("D");
  }
  public static void main(String[] args){
    new Derived("C");
  }
}

题目内容:

A .BD

B .DB

C .C

D .编译错误

第 9 题(单选题)

题目名称:

以下程序执行的结果是:

class X{
  Y y=new Y();//1
  public X(){//2
    System.out.print("X");
  }
}
class Y{
  public Y(){//3
    System.out.print("Y");
  }
}
public class Z extends X{
  Y y=new Y();//4
  public Z(){//5
    System.out.print("Z");
  }
  public static void main(String[] args) {
    new Z();
  }
}

题目内容:

A .ZYXX

B .ZYXY

C .YXYZ

D .XYZX

第 10 题(单选题)

题目名称:

以下关于关键字super的描述中,正确的是:

题目内容:

A .super关键字只代表当前对象内部的那一块父类型特征,不包含在子类对象中

B .super关键字不仅可以指代子类的直接父类,还可以直接指代父类的父类

C .子类通过super关键字只能调用父类的方法,而不能调用父类的属性

D .子类通过super关键字只能调用父类的属性,而不能调用父类的方法

第 11 题(编程题)

题目名称:

补全构造方法

题目内容:

描述

有父类Base,内部定义了x、y属性。有子类Sub,继承自父类Base。子类新增了一个z属性,并且定义了calculate方法,在此方法内计算了父类和子类中x、y、z属性三者的乘积。请补全子类构造方法的初始化逻辑,使得该计算逻辑能够正确执行。

输入描述:

三个整数:x, y, z

输出描述:

三个整数的乘积:x*y*z

示例1

输入:

1 2 3


复制

输出:

6


题目代码:

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            int z = scanner.nextInt();
            Sub sub = new Sub(x, y, z);
            System.out.println(sub.calculate());
        }
    }
}
class Base {
    private int x;
    private int y;
    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }
相关文章
|
19天前
|
Java
Java方法继承、方法重载、方法覆盖总结
总之,继承实现类的层次结构,方法重载提供方法的多样性,方法覆盖实现多态性。这些概念是面向对象编程的核心,用于实现代码的结构、灵活性和可维护性。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
9 0
|
9月前
|
编译器 C++
【C++基础(六)】类和对象(中) --构造,析构函数
【C++基础(六)】类和对象(中) --构造,析构函数
【C++基础(六)】类和对象(中) --构造,析构函数
|
9月前
|
Java C++
Java面向对象 类的成员之代码块的详解
Java面向对象 类的成员之代码块的详解
41 0
|
9月前
|
存储 算法 编译器
【C++技能树】类的六个成员函数Ⅰ --构造、析构、拷贝构造函数
在开始本章内容之前,先浅浅的了解一下this指针的概念.这对理解后面的内容有着很大的帮助.
60 0
|
9月前
|
安全 搜索推荐 Java
6.1 使用局部内部类优化代码:局部内部类的定义与用法
6.1 使用局部内部类优化代码:局部内部类的定义与用法
64 0
|
11月前
一文彻底搞懂父类引用指向子类对象问题
一文彻底搞懂父类引用指向子类对象问题
103 1
|
存储 C++ 开发者
你还不进来看看C++类与对象【7】 —— 动态多态底层原理剖析&&(纯)虚析构解决父类指针不能释放子类属性问题嘛
你还不进来看看C++类与对象【7】 —— 动态多态底层原理剖析&&(纯)虚析构解决父类指针不能释放子类属性问题嘛
111 0
你还不进来看看C++类与对象【7】 —— 动态多态底层原理剖析&&(纯)虚析构解决父类指针不能释放子类属性问题嘛
|
编译器 C++
C++类对象构造顺序
C++类对象构造顺序
40 0
C++类对象构造顺序
|
算法 Java 编译器
如何理解对象赋值给接口的操作(关键在对象!)
如何理解对象赋值给接口的操作(关键在对象!)
如何理解对象赋值给接口的操作(关键在对象!)
|
编译器 C++
C++继承中的对象模型与继承中构造和析构顺序
继承中的对象模型 问题:从父类继承过来的成员,哪些属于子类对象中? 示例: class Base { public: int m_A; protected: int m_B; private: int m_C; //私有成员只是被隐藏了,但是还是会继承下去
82 0
C++继承中的对象模型与继承中构造和析构顺序