【Java刷题进阶】基础进阶篇

导读:本篇文章讲解 【Java刷题进阶】基础进阶篇,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


🌕前言

📩Java基础学习主要以练习为主,很多朋友听完视频课程学会基础以后感觉对练手项目无从下手,这里推荐去牛客网看看,这里的IT题库内容很丰富,属于国内做的很好的IT学习网站,而且是课程+刷题+面经+求职+讨论区分享。

在这里插入图片描述
📩从基础开始练习,知识点编排详细,题目安排合理,题目表述以指导的形式进行。整个题单覆盖了java入门的全部知识点以及全部语法,通过知识点分类逐层递进,从基础开始到最后的实践任务,都会非常详细地指导你应该使用什么函数,应该怎么输入输出。
在这里插入图片描述
**📩牛客网还提供题解专区和讨论区会有大神提供题解思路,对新手玩家及其友好,有不清楚的语法,不理解的地方,看看别人的思路,别人的代码,也许就能豁然开朗。


第一题:回文数判断

🍂题目描述

请补全预设代码中判断回文数的方法,若输入的五位数字是回文是则返回true,否则返回false。回文数即个位与万位相同,十位与千位相同的数字。如:12321、89898

输入描述:
控制台输入的五位数
输出描述:
true/false

🍂示例

输入: 12321
输出: true

示例2

输入: 18182
输出: false

🍃题解

import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        Main main = new Main();
        int number = console.nextInt();
        System.out.println(main.palindromeNumber(number));
    }
 
    public Boolean palindromeNumber(int number) {
        StringBuilder str=new StringBuilder();
        str.append(number);
        int left=0;
        int right=str.length()-1;
        while(left<right){
            if(str.charAt(left)!=str.charAt(right)){
                return false;
            }else{
                left++;
                right--;
            }
        }
        return true;
    }
}

第二题:根据周长求面积

🍂题目描述

已知:

  1. 图形类Shape,该类中定义了图形的周长属性,以及返回周长的方法。
  2. Area接口,该接口中定义了返回面积的方法getArea()。

要求:

  1. 定义圆形类Circle,使其继承于Shape,并实现Area接口。
  2. 定义方形类Square,使其继承于Shape,并实现Area接口。

注意:
圆周率要使用Math类中的常量。

输入描述:
周长
输出描述:
面积(计算时请使用Math类中的常量,面积为double类型,保留三位小数,四舍五入部分预设代码已经完成)

🍂示例

输入: 4
输出:1.273
1.000

🍃题解

import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextDouble()) {
            double s = scanner.nextDouble();
            // Circle和Square是需要你定义的类
            System.out.println(String.format("%.3f",new Circle(s).getArea()));
            System.out.println(String.format("%.3f", new Square(s).getArea()));
        }
    }
 
}
 
class Shape {
 
    private double s; // 周长
 
    public Shape(double s) {
        this.s = s;
    }
 
    public double getS() {
        return s;
    }
 
}
 
interface Area {
    double getArea(); // 面积
}
 
// 圆形
class Circle extends Shape implements Area {
 
    //write your code here......
 
 public Circle(double s) {
        super(s);
    }
 
    @Override
    public double getArea() {
        return Math.PI * Math.pow((getS() / (2 * Math.PI)), 2);
    }
}
 
// 方形
class Square extends Shape implements Area {
 
    //write your code here......
  public Square(double s) {
        super(s);
    }
 
    @Override
    public double getArea() {
        return Math.pow((getS() / 4), 2);
    }
 
}

第三题:冒泡排序

🍂题目描述

有一个长度为7的无序数组,按照从小到大的顺序排序后输出。

输入描述:
数组中的数据
输出描述:
数组中数据排序后输出

🍂示例

输入: 13 11 9 7 5 3 1
输出: 1 3 5 7 9 11 13

🍃题解

import java.util.Arrays;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
         int[] arr = new int[7];
        for (int i = 0; i < arr.length; i++) {
                    arr[i] = scanner.nextInt();
                }
        scanner.close();
 
        //write your code here......
 
for (int i = 0; i < arr.length - 1; i++) {
    for (int j = 0; j < arr.length - 1 - i; j++) {
        if (arr[j] > arr[j + 1]) {
            int temp = arr[j];
            arr[j] = arr[j + 1];
            arr[j + 1] = temp;
        }
    }
}
        for (int k = 0;k < arr.length; k++) {
                    System.out.print(arr[k]+" ");
                 }
        }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/100887.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!