文章目录

  • 函数题
    • jmu-Java-05集合-List中指定元素的删除
  • 编程题
    • 求次大值
    • 数组元素的删除
    • 设计一个BankAccount类
    • 编写程序,实现字符串大小写的转换并倒序输出。
    • sdust-Java-字符串集合求并集

函数题

jmu-Java-05集合-List中指定元素的删除

编写以下两个函数
/以空格(单个或多个)为分隔符,将line中的元素抽取出来,放入一个List/
public static List convertStringToList(String line)
/在list中移除掉与str内容相同的元素/
public static void remove(List list, String str)

裁判测试程序:

public class Main {/*covnertStringToList函数代码*/   /*remove函数代码*/public static void main(String[] args) {Scanner sc = new Scanner(System.in);while(sc.hasNextLine()){List<String> list = convertStringToList(sc.nextLine());System.out.println(list);String word = sc.nextLine();remove(list,word);System.out.println(list);}sc.close();}
}

样例说明: 底下展示了4组测试数据。

输入样例

1 2 1 2 1 1 1 2
1
11 1 11 1 11
11
2 2 2
1
1 2 3 4 1 3 1
1

输出样例

[1, 2, 1, 2, 1, 1, 1, 2]
[2, 2, 2]
[11, 1, 11, 1, 11]
[1, 1]
[2, 2, 2]
[2, 2, 2]
[1, 2, 3, 4, 1, 3, 1]
[2, 3, 4, 3]

AC代码

 /*以空格(单个或多个)为分隔符,将line中的元素抽取出来,放入一个List*/public static List<String> convertStringToList(String line){String[] s = line.split("\\s+");List<String> l = new ArrayList<String>();for(int i = 0; i < s.length; i++){if(!s.equals(" "))l.add(s[i]);}return l;}/*在list中移除掉与str内容相同的元素*/public static void remove(List<String> list, String str){Iterator l = list.iterator();int i;while(l.hasNext()){String s = (String)l.next();if(s.equals(str))l.remove();}}

编程题

求次大值

找出给定n个整数中的次大值(第二大)。

输入格式:
输入分为两行,第一行一个整数n,表示数据的个数,第二行是由空格分隔的n个整数。

输出格式:
n个数据中的次大值。

输入样例:

6
23 34 8 26 17 9

输出样例:

26

AC代码

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n, i, num;n = sc.nextInt();int max1, max2;max1 = sc.nextInt();max2 = max1;for(i = 1; i < n; i++){num = sc.nextInt();if(num >= max1){max2 = max1;max1 = num;}else{if(num > max2)max2 = num;}}System.out.println(max2);sc.close();}}

数组元素的删除

完成数组元素的移动功能:假设数组有n个元素,输入一个数x,把数组的第x个位置的元素删除了,后面的元素依次前进一个位置。 重复若干次这样的删除,得到最后的结果。

输入格式:
第一行包括一个整数n(1<=n<=100),表示数组元素的个数。 第二行输入n个数组元素,均为整数,用空格隔开。 第三行输入一个数k(1<=k<=100),表示要进行k次删除。 接下来k行,每行一个数x,表示要删除第x个元素。

输出格式:
输出经过k次删除后的数组,每两个元素之间用空格隔开。

输入样例:

10
1 2 3 4 5 6 7 8 9 10
4
3
2
4
6

输出样例:

1 4 5 7 8 10

AC代码

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n, k, m;n = sc.nextInt();int[] a = new int[n];int i, j;for(i = 0; i < n; i++)a[i] = sc.nextInt();k = sc.nextInt();for(i = 0; i < k; i++){m = sc.nextInt();for(j = m - 1; j < n - 1; j++){a[j] = a[j + 1];}n--;}System.out.print(a[0]);for(i = 1; i < n; i++){System.out.print(" " + a[i]);}sc.close();}}

设计一个BankAccount类

设计一个BankAccount类,这个类包括:
(1)一个int型的balance表时账户余额。
(2)一个无参构造方法,将账户余额初始化为0。
(3)一个带一个参数的构造方法,将账户余额初始化为该输入的参数。
(4)一个getBlance()方法,返回账户余额。
(5)一个withdraw()方法:带一个amount参数,并从账户余额中提取amount指定的款额。
(6)一个deposit()方法:带一个amount参数,并将amount指定的款额存储到该银行账户上。
设计一个Main类进行测试,分别输入账户余额、提取额度以及存款额度,并分别输出账户余额。

输入格式:
依次输入账户余额、提取额度、存款额度

输出格式:
依次输出初始账户余额、提取amount额度后的账户余额、存入amount后的账户余额

输入样例:
在这里给出一组输入。例如:

700
70
7

输出样例:
在这里给出相应的输出。例如:

700
630
637

AC代码

import java.util.*;
class BankAccount{int balance;BankAccount(){balance = 0;}BankAccount(int balance){this.balance = balance;}void setBalance(int balance){this.balance = balance;}int getBlance(){return balance;}int withdraw(int amount){balance -= amount;return balance;}int deposit(int amount){balance += amount;return balance;}
}public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);BankAccount ba = new BankAccount();int b, a1, a2;b = sc.nextInt();a1 = sc.nextInt();a2 = sc.nextInt();ba.setBalance(b);System.out.println(ba.getBlance());System.out.println(ba.withdraw(a1));System.out.println(ba.deposit(a2));sc.close();}
}

编写程序,实现字符串大小写的转换并倒序输出。

编写程序,实现字符串大小写的转换并倒序输出。

输入格式:
输入一行字符串

输出格式:
字符串大小写的转换,并倒序输出

输入样例:

Hello World!

输出样例:

!DLROw OLLEh

AC代码

import java.util.*;
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String s;s = sc.nextLine();int len = s.length();char[] n = new char[len];int i;for(i = 0; i < len; i++){char c = s.charAt(i);if(c >= 'a' && c <= 'z')c -= 32;else if(c >= 'A' && c <= 'Z')c += 32;n[i] = c;}for(i = len - 1; i >= 0; i--){System.out.printf("%c", n[i]);}sc.close();}}

sdust-Java-字符串集合求并集

从键盘接收N个英文字符串(其中不同的字符串数量大于10),从头开始取5个不同的字符串放入一个集合S1,然后接着取5个不同的字符串放入另一个集合S2,按照字母顺序输出S1和S2的并集中的每个字符串(字符串区分大小写)

输入格式:
一行以空格分开的英文字符串(不同的字符串数量大于10)。

输出格式:
按照字母顺序(先比较字符串首字母,首字母相同的比较字符串第二个字母,以此类推)输出的S1和S2并集的字符串。

输入样例:

android python java javaee javase database java jsp servlet java algorithm junit

输出样例:

algorithm
android
database
java
javaee
javase
jsp
python
servlet

AC代码

import java.util.*;
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String s[] = new String[12];Set<String> a = new TreeSet<String>();Set<String> b = new TreeSet<String>();String s1 = sc.nextLine();for(String i:s1.split(" ")){if(a.size() < 5){a.add(i);continue;}if(b.size() < 5){b.add(i);continue;}}a.addAll(b);for(String i:a){System.out.println(i);}sc.close();}}

#Java学习#实验考试题相关推荐

  1. java关于泛型的实验代码_[ Java学习 ] 泛型类的应用实验

    成文原因: 这篇文章是我这周所做的 Java 实验题的一个小总结. 这次实验让我深刻赞同了我们 Java 老师在这节实验课前告诉我们的话: 最重要的是把问题想明白,它要怎么拆分成几个类,每个类里究竟需 ...

  2. java合肥工业大学考试题库_合肥工业大学java程序设计实验二

    合肥工业大学java程序设计实验二 1 / 3<Java 程序设计>实验报告--实验 2实验室:三.四机房 2014 年 05 月 22日学院 计算机与信息学院 专业班级 姓名 成绩课程名 ...

  3. 201671010140. 2016-2017-2 《Java程序设计》java学习第一周

       java学习第一周        本周是新学期的开端,也是新的学习进程的开端,第一次接触java这门课程,首先书本的厚度就给我一种无形的压力,这注定了,这门课程不会是轻松的,同时一种全新的学习方 ...

  4. Java学习教程整理

    Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 网上有很多 Java 教程,无论是基础入门还是开发小项目的教程都比比皆是,可是系统的很少,对于Java 学习者来说找到系 ...

  5. java多线程阶乘_【java学习记录】11.用多线程实现阶乘的计算过程和结果的读取(thread类ReadThread )...

    (源码在上传的压缩包"[java学习记录]11.多线程实现阶乘计算(Thread类和Runnable接口)"中可看到,该压缩包可下载)java * 采用Thread类的子类实现线程 ...

  6. java程序设计——实验四

    <Java程序设计>实 验 报 告(四) 实验名称:java编程基础 实验地点:10-306 所使用的工具软件及环境: JDK1.7或1.8与Eclipse 一.实验目的: 了解图形用户界 ...

  7. 西电java实验报告 界面_西电计算机Java上机实验报告.docx

    西电计算机Java上机实验报告.docx 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. ...

  8. 获奖感想和Java学习总结

    获奖感想和Java学习总结 一.获奖感想 能成为小黄衫第二批的成员之一,我感到非常荣幸.我在对老师给予我的鼓励与肯定感到欣喜之余,更多的是感受到了一种鞭策与期望.小黄衫不仅仅是对我的一种奖励,更是激励 ...

  9. Java学习比较好的书籍资料

    <Java从入门到精通> <Java核心技术卷一> <Java核心技术卷二> <Java编程思想> <疯狂Java讲义> <JavaW ...

最新文章

  1. ActiveReport的小数显示方法
  2. 用python画花瓣-Python:绘制樱花树
  3. 老男孩Python全栈开发(92天全)视频教程 自学笔记07
  4. hdu1006 Tick and TIck
  5. Object-C基础入门笔记(一)
  6. [转]软件测试演义——中高级系列(序)
  7. Google Guava,牛逼的脚手架
  8. ASP+页缓存OutputCache Duration用法
  9. 编程心法 之 内聚度和耦合度是什么
  10. 漂亮的thinkphp 跳转页封装
  11. 浅谈前端面向对象oop思想
  12. 2022年7月深圳地区CPDA数据分析师认证
  13. android日历控件使用,Android学习教程之日历控件使用(7)
  14. 如何在CAD中快速定位坐标?
  15. 50个开机进BIOS按键查询
  16. android为什么总是闪退怎么办,手机老是闪退怎么办【解决方法】
  17. C1认证学习笔记2--计算机通识
  18. 工作五年,一年内我靠这系列 java 面试宝典从 13K 到大厂 30K
  19. 解决adb几秒自动退出
  20. 计算机视觉领域的大牛主页

热门文章

  1. ParticleSystem中的Culling Mode对耗时有怎样的影响
  2. 计算机乘法算法流程,布斯乘法算法
  3. 《论文写作》课程心得
  4. 数据库——完整性约束条件
  5. pytorch的训练测试流程总结,以及model.evel(), model.train(),torch.no_grad()作用
  6. P4使用Ubuntu中安装教程
  7. WeDrivePlugin64_24.dll 引发win7系统不能进入桌面
  8. duet连win10,duetdisplay这个软件在win10上用不了?安装vs2015的时候想取消安装没有点取消...
  9. Emacs 入门指引(一) Emacs简介
  10. 【leedcode刷题1】两数之和