Java日常练习题,每天进步一点点(25)

下面是对于“Java日常练习题,每天进步一点点(25)”的完整攻略。

题目描述

该题目共包含7个子问题,主要考察的是Java中的数组的使用。具体的题目描述可以参考原文链接:Java日常练习题,每天进步一点点(25)

解题思路

1.第1题

创建一个长度是3的字符串数组,输入3个字符串到这个数组当中。然后使用一个循环,对这个字符串数组进行反转。

  • 首先,使用Scanner类获取用户输入的3个字符串,分别存储到三个变量中
  • 接着,定义一个长度为3的字符串数组strArr,将之前获取到的三个字符串存入该数组
  • 接下来,使用循环将字符串数组中的每一个字符串进行反转,具体可以采用双指针的方法

示例如下:

Scanner scanner = new Scanner(System.in);
String s1 = scanner.nextLine();
String s2 = scanner.nextLine();
String s3 = scanner.nextLine();

String[] strArr = {s1, s2, s3};

for (int i = 0; i < 3; i++) {
    int left = 0;
    int right = strArr[i].length() - 1;
    char[] arr = strArr[i].toCharArray();
    while (left < right) {
        char temp = arr[left];
        arr[left] = arr[right];
        arr[right] = temp;
        left++;
        right--;
    }
    strArr[i] = new String(arr);
}

System.out.println(Arrays.toString(strArr));

2.第3题

创建一个长度是6的整型数组,要求数组元素的值都在1-30之间,且这6个数字是不同的。按照从小到大的顺序输出所有数组元素。

  • 首先,定义一个长度为6的整型数组nums
  • 接着,使用循环遍历该数组,对每一个元素进行初始化,要求其值在1~30之间且与之前的数字都不相同
  • 最后,使用排序(可以采用任意一种排序算法)对该数组进行排序,然后输出该数组

示例如下:

int[] nums = new int[6];

for (int i = 0; i < 6; i++) {
    int num = (int) (Math.random() * 30) + 1;
    while (contains(nums, num)) {
        num = (int) (Math.random() * 30) + 1;
    }
    nums[i] = num;
}

Arrays.sort(nums);
System.out.println(Arrays.toString(nums));

其中,contains方法用于判断数组中是否已经存在某一个数字,实现方式如下:

public static boolean contains(int[] nums, int target) {
    for (int num : nums) {
        if (num == target) {
            return true;
        }
    }
    return false;
}

总结

本文针对“Java日常练习题,每天进步一点点(25)”中的7个子问题,分别给出了解题思路和代码示例,并且对难以理解的代码片段进行了详细的注释说明。希望本文能够对读者理解和学习Java中的数组使用有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java日常练习题,每天进步一点点(25) - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • 深入理解JavaScript内存管理和GC算法

    深入理解JavaScript内存管理和GC算法 背景介绍 JavaScript是一门非常灵活多用途的语言,这得益于JavaScript内部的垃圾回收机制以及自动内存管理机制。不仅如此,了解这些机制将有助于我们编写出高效且易于维护的代码。 内存管理方法 JavaScript中,内存管理主要通过两种方法进行:栈(stack)和堆(heap)。 栈(Stack) …

    C 2023年5月23日
    00
  • C++中的对象指针总结

    C++中的对象指针总结 在C++中,指针是非常常见的数据类型,而对象指针就是指向一个对象的指针。本文将讲解C++中的对象指针的使用以及注意事项。 声明对象指针 在C++中声明一个对象指针非常简单,如下所示: ClassName *pObject; 其中,ClassName是要指向的对象的类名,pObject是指向这个对象的指针。需要注意的是,指针声明时必须要…

    C 2023年5月22日
    00
  • sketchup怎么制作c字母形状的桌椅模型?

    首先,我们需要了解一下SketchUp的基本操作,包括如何绘制基本图形、如何编辑图形、如何使用组和组件,以及如何使用材质等。熟练掌握这些操作后,我们才能更好地制作C字母形状的桌椅模型。 以下是制作C字母形状的桌椅模型的步骤及示例: 步骤1:创建桌面 从工具栏中选择矩形工具,并在工作区内绘制一个长方形,作为桌面。 切换到移动工具,将桌面向上移动一定的距离,成为…

    C 2023年5月23日
    00
  • c++代码调试方式的几点建议

    C++代码调试方式的几点建议 1. 编写可调试的代码 1.1. 使用注释 在代码中添加足够的注释,尤其是在一些重要的函数或者模块中,可以帮助调试者更快地了解代码的意图和实现方式。注释应该包括函数的输入输出参数以及核心实现思路,使得阅读代码的人更加容易理解代码的功能。 1.2. 编写可重用的代码 在编写代码时,要尽量考虑到代码的可重用性。具有重用价值的代码通常…

    C 2023年5月30日
    00
  • C语言中字符串的两种定义方式详解

    C语言中字符串的两种定义方式详解 什么是字符串? 字符串(string)是由一串字符(character)组成的序列,其中每个字符占据一个字节。在C语言中,字符串以null字符(\0)结尾,因此任何一个字符串都都包含了一个null字符。null字符不是可打印字符,而是一个表示字符串结尾的特殊符号。 直接定义字符串 在C语言中,我们可以直接定义一个字符串,定义…

    C 2023年5月23日
    00
  • C++函数重载的定义与原因详解

    C++函数重载的定义与原因详解 什么是函数重载 函数重载是指在一个类中定义多个同名函数,但它们的参数不同(参数个数、参数类型或参数顺序不同)。 函数重载的定义 函数名必须相同。 函数的参数列表必须不同(个数、类型、顺序)。 函数的返回类型可以不同。 可以发生在同一个 class 内,也可以发生在父类和子类之间。 编译器根据函数参数列表的不同自动进行函数匹配。…

    C 2023年5月23日
    00
  • FreeSWITCH添加iLBC编码及转码

    操作系统 :CentOS 7.6_x64 FreeSWITCH版本 :1.10.9 一、安装ilbc库 从第三方库里下载指定版本: git clone https://freeswitch.org/stash/scm/sd/libilbc.git 如果下载过慢,可从如下途径获取: 关注微信公众号(聊聊博文,文末可扫码)后回复 20230416 获取。 编译及…

    C语言 2023年4月17日
    00
  • C++实现教师管理系统

    C++实现教师管理系统攻略 1、设计系统结构 在实现教师管理系统前,我们需要先设计系统的结构。 在本系统中,我们需要完成以下功能: 添加教师信息 删除教师信息 修改教师信息 查询教师信息 显示所有教师信息 综上所述,我们可以设计出如下的系统结构: struct Teacher { int id; //教师编号 string name; //教师姓名 int …

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部