JavaSE:第十七章:编程测试题

javaSE基础测试题 这套题目是传智播客javaEE入学测试题,我是在自己学完javaSE之后做的套题,感觉这套题考察的内容很基础,很适合自学javaSE的自测。全套试题有50个选择题,单选和多选都有,每道题2分,80分合格,快来看看你能考多少分吧! 1. 在JAVA中,下列哪些说法是正确的( AC )   A.java源文件的扩展名为.java    //正确 B.写好的java源程序可以直接运行 阅读详情

**练习:求1+2!+3!+...+20!的和**

    long sum = 0;
    for (int i = 1; i <= 20; i++) {
        long temp= 1;
        for (int j = 1; j <= i; j++) {
            temp *= j;
        }
        sum += temp;
    }
    System.out.println(sum);
结果为:2561327494111820313

**练习:获取字串中各个的字符数量**


    public static void main(String[] args) {
            String string = "中国,国国哥,好帅是个大帅,哥哥";
            HashMap<Character, Integer> hashMap = new HashMap<>();
            while(string.length()>0) {
                Character c = string.charAt(0);
                string = string.substring(1);
                Integer integer = hashMap.get(c);
                if(integer == null ) {
                    hashMap.put(c, 1);
                }else {
                    hashMap.put(c, integer + 1);
                }
            }
            Set<Entry<Character, Integer>> entrySet = hashMap.entrySet();
            for (Entry<Character, Integer> entry : entrySet) {
                System.out.println(entry);
            }
    }
结果:

    哥=3
    帅=2
    大=1
    个=1
    ,=3
    中=1
    国=3
    好=1
    是=1
**练习:消除集合中重复的元素**

    public static void main(String[] args) {
            List list = Arrays.asList(1,2,3,3,4,4,5,5,6,1,9,3,25,4);
            HashSet<Integer> hashSet = new HashSet<>();
            hashSet.addAll(list);
            for (Integer integer : hashSet) {
                System.out.println(integer);
            }
    }
结果:

    1
    2
    3
    4
    5
    6
    9
    25
**练习:找出数组中的一个值,使其左侧值的和等于右侧值的加和,例如:1,2,5,3,2,4,2,结果为第四个值。**
    

    public static void main(String[] args) {
            int[] arr = new int[] {1,2,5,3,2,4,2};//1,2,5,3,2,4,2,9,2,1,7,6,3
            int targetIndex=0;
            for (int i = 0; i < arr.length; i++) {
                int leftSum=0;
                int rightSum=0;
                for (int j = 0; j < targetIndex; j++) {
                    leftSum += arr[j];
                }
                for (int j = targetIndex+1; j < arr.length; j++) {
                    rightSum+=arr[j];
                }
                if(leftSum == rightSum) {
                    break;
                }
                targetIndex++;
            }
            if(targetIndex == arr.length) {
                System.out.println("未找到这样的数值");
            }else {
                System.out.println("目标下标:" + targetIndex + "对应的值:" + arr[targetIndex]);
            }
    }
结果为:目标下标:3对应的值:3

**练习:**
请编写一个 Application
实现如下功能:从控制台给出的一个字母串,然后判断该串的第一个字母是否为大写,若是大写则统计该串中大写字母的个数,并将所有大写字母输出;否则输出信息串”第一个字母不是大写字母!”。

    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入一个字符串:");
    String string = scanner.next();
    char first = string.charAt(0);
    int intf = (int)first;
    System.out.println("第一个字母大小为:" + intf);
    if(intf >= 65 && intf <= 90) {
        int count = 0;
        for (int i = 0; i < string.length(); i++) {
            char charAt = string.charAt(i);
            int intChar = (int)charAt;
            if(intChar >= 65 && intChar <= 90) {
                count++;
                System.out.print(charAt + " ");
            }
        }
        System.out.println(count);
    }else {
        System.out.println("第一个字母不是大写字母!");
    }
运行结果:
请输入一个字符串:

    ABCabcdBC
    第一个字母大小为:65
    A B C B C 5

**练习:**
一个应用程序,接受用户输入的一行字符串,统计字符个数,然后反序输出。        

    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入字符串:");
    String string = scanner.next();
    String back;
    int index= string.length() - 1;//4-1=3
    char[] charArray = new char[index + 1];
    for (int i = 0; i < string.length(); i++) {
        char charAt = string.charAt(i);
        charArray[index - i] = charAt;
    }             //3  0123
    String string2 = new String(charArray);
    System.out.println("字符个数为:" + string.length() + "," + string2);

运行结果:

    请输入字符串:
    sddfgghhj
    字符个数为:9,jhhggfdds
    
**练习:**
实现这两个字符串的拼接

    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入字符串:");
    String next1 = scanner.next();
    System.out.println("请输入再次输入字符串:");
    String next2 = scanner.next();
    String concat = next1.concat(next2);
    System.out.println(concat);
运行结果:

    请输入字符串:
    fdsaf
    请输入再次输入字符串:
    dsfaaf
    fdsafdsfaaf

**练习:写一个冒泡排序**
排序思想:
相邻两元素进行比较,如有需要则进行交换,每完成一次循环就将最大元素排在最后(如从小到大排序),下一次循环是将其它的数进行类似操作。

简单来说:
拿从小到大排序:拿二个数来比大小,大的数拿出来,继续跟后面的数比较大小,继续拿大的数出来这样循环,最后一个数反正是最大的。下一次循环操作类似。

案例:
int[] array = {11,5,9,7,3,2};
最开始数组:11 5 9 7 3 2
11比5大,拿11:5  11 9 7 3 2
11比9大,拿11:5 9 11 7 3 2
11比7大,拿11:5 9 7 11 3 2
...
比完第一轮后:
5 9 7 3 2 11
代码参考:

    int[] array = {11,5,9,7,3,2};
    for (int i = 1; i < array.length; i++) {
        if(array[i-1] > array[i]) {
            int temp;
            temp = array[i-1];
            array[i-1] = array[i];
            array[i] = temp;
        }
    }
    for (int i = 0; i < array.length; i++) {
        System.out.print(array[i] + " ");
    }

已经确定11为最大的数,就不拿11继续比较了
现在要比较的数组:5 9 7 3 2
和第一轮一样
拿5和9比,9大,拿9:5 9 7 3 2
拿9和7比,9大,拿9:5 7 9 3 2
...
第二轮比较:5,7,3,2,9
第三轮比较:5,3,2,7
第四轮比较:3,2,5
...
我们可以发现比较的数的形状有点像:
。。。。。。
。。。。。
。。。。
。。。
。。
。
实现代码:

    int[] array = {11,5,9,7,3,2};
    for (int i = 0; i < array.length; i++) {
        for (int j = 0; j < array.length - i; j++) {                
            System.out.print("。");
        }
        System.out.println();
    }
发现内外循环可以使用上面的操作了,我们可以继续对俩个数进行换位置操作。之前我们学过二个数换位置,所以附上代码:

    if(小的数变量 > 大的数变量) {
        int 临时变量;
        临时变量= 小的数变量;
        小的数变量 = 大的数变量;
        大的数变量= 临时变量;
    }

放到数组中

    if(array[j-1] > array[j]) {
        int temp;
        temp = array[j-1];
        array[j-1] = array[j];
        array[j] = temp;
    }
最终代码:

    int[] array = {11,5,9,7,3,2};
    for (int i = 1; i <= array.length; i++) {
        for (int j = 1; j <= array.length - i; j++) {
            if(array[j-1] > array[j]) {
                int temp;
                temp = array[j-1];
                array[j-1] = array[j];
                array[j] = temp;
            }
        }
    }
    for (int i = 0; i < array.length; i++) {
        System.out.print(array[i]);
    }
好了冒泡排序完成

 

JavaSE综合测试题 1. 在JAVA中,下列哪些说法是正确的( AB)   A.java源文件的扩展名为.java B.写好的java源程序可以直接运行 C.编写的源程序必须先编译后才能运行 D.程序员可以读懂扩展名为.class的文件 2. 下列标识符哪个是合法的(BD) A.class  B.$abc C.1234 D._name 3. 下面哪些赋值语句是正确的?(A) A. lon 阅读详情

相关推荐

Java语言程序设计与数据结构(基础篇)第17章课后习题代码chapter17.rar

Java语言程序设计与数据结构(基础篇)第17章课后习题代码

找出数组中左加和等于右加和的数字

找出数组中左加和等于右加和的数字

程序员的专栏 1494

SAM2与Docker的完美组合:5分钟搞定Linux环境下的图像分割部署

本文详细介绍了如何在Linux环境下通过Docker快速部署SAM2图像分割模型,解决安装过程中的常见问题。文章提供了从镜像选择、CUDA版本匹配到容器构建的全流程指南,特别针对GPU加速环境下的'cudnn_frontend: No execution plans support the graph'等报错提供了实用解决方案,帮助开发者在5分钟内完成高效部署。

fern8的博客 934

算法:请找出数组中的某个数,它的左侧数字相加之和等于右边。

算法:请找出数组中的某个数,它的左侧数字相加之和等于右边。 原 算法:请找出数组中的某个数,它的左侧数字相加之和等于右边。    摘要: 二分查找的思想在算法面试题目中的使用,阿里算法面试题目:请找出数组中的某个数,它的左侧数字相加之和等于右边。     看到这题,我的第一个想法就是从头到尾遍历数组,然

LANGZI7758521的专栏 3740

项目管理-(补充)七种基本质量工具

七种基本质量工具,用于PDCA循环的架构内 解决与质量相关的问题,分为老七工具和新七工具。 1)老七种:刘英只点劣质茶(流程图、因果图、直方图、散点图、帕累托图、控制图、核查表)2)新七种:锯树联亲测动优(矩阵图、树形图、关联图、亲和图、过程决策程序图、活动网络图、优先矩阵)

weixin_42081167的博客 4604

Qt (高仿Visio)流程图组件开发(一) 效果展示及基本开发框架构思

最近因为工作原因需要使用Qt开发一个类似于Visio的流程图组件,需满足基本的流程图功能,图元类型可自定义扩展,不同图元存有各类自定义数据,可以保存为xml文件,可以读取xml文件生成流程图等等。

qq_43793182的博客 1万+

《Java语言程序设计与数据结构》编程练习答案(第十七章)

17.1 import java.io.*; public class book { public static void main(String[] args) throws Exception { File dst = new File("Exercise17_01.txt"); FileWriter fw = new ...

SWY's Workshop 1万+

压电陶瓷传感器避坑指南:实测阻抗匹配对信号输出的影响(附示波器调试技巧)

本文深入探讨压电陶瓷传感器在工业振动监测中的阻抗匹配问题,通过等效电路模型和实测数据揭示负载阻抗对信号输出的关键影响。文章提供从元件选型到示波器调试的完整解决方案,特别强调100kΩ以上负载阻抗的重要性,并分享JFET缓冲器设计和PCB布局的实用技巧,帮助工程师避免信号失真和输出不稳定问题。

ooo22的博客 516

Java 编程题目 第十七题

package com.liuhuan.test; public class fun17 { /* * 题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。 * 已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比, * 请编程序找出三队赛手的名单。 */ public static void main(String[]

刘欢的博客 322

luks-磁盘加密工具

linux磁盘加密配置工具及步骤详解

zdd56789的博客 123

第一章:Profibus DP通信简介

PROFIBUS (Process Fieldbus)的缩写,是一种国际化的、开放的、不依赖于设备生产商的现场总线标准。它广泛应用于制造业自动化、流程工业自动化和楼宇、交通、电力等其他工业自动化领域。串行现场总线主要用来连接数字现场设备或中、低功能的系统,如传感器、执行机构、变送器、可编程序控制器(PLC)、数控装置(NC)、编程设备、本地人机接口等。

qq_22560021的博客 4898

JavaSE:第十七章:编程测试题,费时6个月成功入职阿里

作为过来人,小编是整理了很多进阶架构视频资料、面试文档以及PDF的学习资料,针对上面一套系统大纲小编也有对应的相关进阶架构视频资料由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)[外链图片转存中…(img-Pjo2IHKi-1712086187734)]

m0_58269520的博客 397

《从理念到落地:Claude Code 在真实项目中的深度实践指南》基于 Anthropic 团队内部使用经验的扩展与深度解读,一篇面向工程团队的全面实践手册

Claude Code 支持通过# 创建新的 API 端点根据以下输入创建完整的 API 端点:资源名称:$ARGUMENTS请创建以下文件:1. `src/routes/{resource}.routes.ts` - 路由定义2. `src/controllers/{resource}.controller.ts` - 控制器3. `src/services/{resource}.service.ts` - 服务层。

AI天才研究院 484

JavaSE:第十七章:编程测试题,阿里珍藏版Java框架体系架构手写文档

由于文案过于长,在此就不一一介绍了,这份Java后端架构进阶笔记内容包括:Java集合,JVM、Java并发、微服务、SpringNetty与 RPC 、网络、日志 、Zookeeper 、Kafka 、RabbitMQ 、Hbase 、MongoDB、Cassandra 、Java基础、负载均衡、数据库、一致性算法、Java算法、数据结构、分布式缓存等等知识详解。本知识体系适合于所有Java程序员学习,关于以上目录中的知识点都有详细的讲解及介绍,掌握该知识点的所有内容对你会有一个质的提升,

m0_60147147的博客 729

【C2000系列DSP的Bootloader详解】如何利用脚本自动合并Bin文件

本文通过OutconvertBin.py实现了 C2000 Bootloader+UserApp 的「ELF 转 BIN+BIN 合并」全流程自动化,核心优势如下: 架构适配:严格遵循 C28x 16 位大端格式,生成的 BIN 文件可直接烧录; 自动化程度高:一键完成清理、转换、合并,无需手动执行多个命令; 可追溯性:生成 CRC32 校验值,便于验证文件完整性; 量产友好:合并后的merged.bin支持一次性烧录,提升量产效率。

昔时扬尘处 185

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

java se试卷_JavaSE测试题及答案.docx

JavaSE测试题及答案JavaSE测试题及答案JavaSE 内部测试题一.选择题每题2分,共40分在Java中,定义接口的关键字是()。(一项)abstractinterfaceclassextends在Java中,类可派生自一个父类,并实现()个接口(一项)123任意多在Java中,已定义了两个接口B和C,要定义一个类A 实现接口B和C,以下语句正确的是(一项)class A extends ...

weixin_39795325的博客 465

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

JAVASE内测试题

JAVA基础内测试题 机票价格按照淡季旺季、头等舱和经济舱收费、输入机票原价、月份和头等舱或经济舱,其中旺季(5-10月)头等舱9折,经济舱85折,淡季(11月到来年4月)头等舱7折,经济舱65折,最终输出机票价格。(15分) 把100——200中不能被3整除的数输出,每四个换一行输出。(15分) 求类似于字符串“冬天大雪纷飞,爱大雪,大雪天气真兴奋,圣诞节大雪快乐”中子串“大...

张晨光老师的播客 1280

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

JavaSE25套习题含答案资源介绍:全面的JavaSE知识巩固工具

JavaSE25套习题含答案资源介绍:全面的JavaSE知识巩固工具 去发现同类优质开源项目:https://gitcode.com/ 在当前信息技术快速发展的时代背景下,Java作为一门主流的编程语言,其基础知识的掌握程度对开发者的职业发展至关重要。本文将向您推荐一个开源项目——JavaSE25套习题(含答案),这是一个专为JavaSE学习者设计的习题集,帮助您巩固基础,提升技能。 项目介绍 J...

gitblog_06752的博客 410

javase期末考试题_JavaSE期末总测试题

JavaSE期末总测试注意:直接将自己的答案编写在每一道试题的下面,代码要规范,最好使用不同背景加注,提交试卷的时候文件的命名格式如:”姓名.doc”一、简答题1.简述面向对象的特征有哪些方面?三大特征:封装、继承、多态1、封装:在开发中,实体类我们一般都会封装起来,隐藏对象的属性和实现细节,仅对外提供公共访问方式。1)私有化属性2)根据需求设置set、get方法3)提供公共方法对其访问2、继承:...

weixin_39642619的博客 136

JavaSE 测试题

&&和&的区别(3分) 短路与,非短路与和位与运算符 短路与:当两边都为真时结果为真,第一个语句为假时不执行第二条语句 非短路与:两边无论真假都执行 位与:要运算的两个数转换为二进制,两边相同时结果为1,不一样为0,结果不会超过最小的那个 continue、break、return的区别(3分) Continue为结束当前次循环,执行下一次循环 Break为结束本层循环,嵌套循环中要跳出外层循环使用breakouter return有两个作用 终止函数运行。 结束swtch分..

weixin_46311092的博客 271
上一篇: Redis数据结构存储系统:第一章:安装配置
下一篇: Linux系统:第一章:简介
Java程序员廖志伟
Java程序员廖志伟 优质创作者: Java技术领域 优质创作者: Java技术领域 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄8年 2万+粉丝 1902原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java程序员廖志伟

赏我包辣条呗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值