JAVA编程题系列——涵盖几乎所有java内容
自己定义一个类,有static属性和构造方法,有构造方法重载,有其他方法(方法有对String类型操作)
public class MyClass {// 静态属性public static String staticProperty = "Static Property";// 成员变量private String value;// 构造方法public MyClass(String value) {this.value = value;}// 构造方法重载public MyClass(int value) {this.value = String.valueOf(value);}// 其他方法,对字符串类型进行操作public void manipulateString(String newValue) {this.value += newValue;}// Getter方法public String getValue() {return value;} }public class Main {public static void main(String[] args) {// 调用不同的构造方法生成两个对象MyClass obj1 = new MyClass("Hello");MyClass obj2 = new MyClass(123);// 调用其他方法obj1.manipulateString(" World");obj2.manipulateString("456");// 输出结果System.out.println("Value of obj1: " + obj1.getValue()); // 输出:Hello WorldSystem.out.println("Value of obj2: " + obj2.getValue()); // 输出:123456// 访问静态属性System.out.println("Static property: " + MyClass.staticProperty); // 输出:Static Property} }
定义一个Person类,有各种属性和行为,对属性建立setter和getter方法。对其中一个行为进行重载,建立一个TestPerson类,在main函数中建立Person对象,并调用对象的行为
// Person 类 public class Person {// 属性private String name;private int age;private String gender;// 构造函数public Person(String name, int age, String gender) {this.name = name;this.age = age;this.gender = gender;}// Getter 和 Setter 方法public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}// 行为方法(重载)public void introduce() {System.out.println("Hello, I am " + name + ", " + age + " years old, " + gender + ".");}// 重载 introduce 方法public void introduce(String occupation) {System.out.println("Hello, I am " + name + ", " + age + " years old, " + gender + ".");System.out.println("I am a " + occupation + ".");} }// TestPerson 类 public class TestPerson {public static void main(String[] args) {// 创建 Person 对象Person person1 = new Person("Alice", 30, "Female");// 调用对象的行为person1.introduce();// 使用重载方法person1.introduce("software engineer");// 测试 Getter 和 Setter 方法System.out.println("Before setting age: " + person1.getAge());person1.setAge(35);System.out.println("After setting age: " + person1.getAge());} }
自行定义任意一个抽象的父类,有属性和方法,再自行定义两个子类,子类有不同于父类的属性和方法。同时重写父类的一个方法。用多态的形式调用子类方法,方法中涉及基本类型的包装类。写出Java程序
abstract class Shape {// 属性protected double area;// 抽象方法public abstract void calculateArea();// 方法public void displayArea() {System.out.println("Area: " + area);} }class Circle extends Shape {// 子类属性private double radius;// 构造方法public Circle(double radius) {this.radius = radius;}// 重写父类方法@Overridepublic void calculateArea() {area = Math.PI * radius * radius;}// 子类方法public void displayRadius() {System.out.println("Radius: " + radius);} }class Rectangle extends Shape {// 子类属性private double length;private double width;// 构造方法public Rectangle(double length, double width) {this.length = length;this.width = width;}// 重写父类方法@Overridepublic void calculateArea() {area = length * width;}// 子类方法public void displayDimensions() {System.out.println("Length: " + length + ", Width: " + width);} }public class Main {public static void main(String[] args) {// 使用多态性调用子类方法Shape circle = new Circle(5.0);circle.calculateArea();circle.displayArea(); // 输出:Area: 78.53981633974483// 使用多态性调用子类方法Shape rectangle = new Rectangle(4.0, 6.0);rectangle.calculateArea();rectangle.displayArea(); // 输出:Area: 24.0} }
输入一个日期格式为xxxx-xx-xx,如果格式不正确,抛出一个自定义日期格式异常,如果格式正确,请输出:你输入的2023-01-01是兔年,星期日,然后每隔一秒钟,输出现在是2024年2月26日,**时**分**秒
import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date;class InvalidDateFormatException extends Exception {public InvalidDateFormatException(String message) {super(message);} }public class Main {public static void main(String[] args) {try {String inputDate = "2023-01-01";validateDateFormat(inputDate);// 输出输入日期信息SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");Date date = dateFormat.parse(inputDate);Calendar calendar = Calendar.getInstance();calendar.setTime(date);int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH) + 1;int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);String animal = getChineseZodiac(year);String dayOfWeekString = getDayOfWeekString(dayOfWeek);System.out.println("你输入的" + inputDate + "是" + animal + "年," + dayOfWeekString);// 模拟每隔一秒钟输出当前日期时间while (true) {Thread.sleep(1000); // 等待1秒calendar.add(Calendar.SECOND, 1); // 增加1秒year = calendar.get(Calendar.YEAR);month = calendar.get(Calendar.MONTH) + 1;int day = calendar.get(Calendar.DAY_OF_MONTH);int hour = calendar.get(Calendar.HOUR_OF_DAY);int minute = calendar.get(Calendar.MINUTE);int second = calendar.get(Calendar.SECOND);System.out.printf("现在是%d年%d月%d日,%02d时%02d分%02d秒%n", year, month, day, hour, minute, second);}} catch (InvalidDateFormatException e) {System.out.println(e.getMessage());} catch (ParseException | InterruptedException e) {e.printStackTrace();}}private static void validateDateFormat(String inputDate) throws InvalidDateFormatException {if (!inputDate.matches("\\d{4}-\\d{2}-\\d{2}")) {throw new InvalidDateFormatException("日期格式错误,请输入格式为xxxx-xx-xx的日期。");}}private static String getChineseZodiac(int year) {String[] zodiacs = {"鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪"};return zodiacs[(year - 1900) % 12];}private static String getDayOfWeekString(int dayOfWeek) {String[] daysOfWeek = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};return daysOfWeek[dayOfWeek - 1];} }
自定义一个类,类中引用了泛型技术。生成几个自定义类的对象,将对象加入到集合的ArrayList或LinkList,并在集合中删除部分对象,最后在集合中删除对象的全部输出,Java程序
import java.util.ArrayList; import java.util.Iterator; import java.util.List;class CustomClass<T> {private T data;public CustomClass(T data) {this.data = data;}public T getData() {return data;}public void setData(T data) {this.data = data;} }public class Main {public static void main(String[] args) {// 创建自定义类的对象CustomClass<Integer> obj1 = new CustomClass<>(1);CustomClass<String> obj2 = new CustomClass<>("Hello");CustomClass<Double> obj3 = new CustomClass<>(3.14);// 创建ArrayList集合List<CustomClass<?>> list = new ArrayList<>();// 将对象添加到集合中list.add(obj1);list.add(obj2);list.add(obj3);// 输出集合中的对象System.out.println("初始集合中的对象:");for (CustomClass<?> obj : list) {System.out.println(obj.getData());}// 删除部分对象list.remove(obj2);// 输出删除部分对象后的集合System.out.println("删除部分对象后的集合:");for (CustomClass<?> obj : list) {System.out.println(obj.getData());}// 删除集合中的全部对象list.clear();// 输出删除全部对象后的集合System.out.println("删除全部对象后的集合:");for (CustomClass<?> obj : list) {System.out.println(obj.getData());}} }
向一个文件输入自己的信息,然后把信息打印出来,打印在终端Java程序
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException;public class FileIOExample {public static void main(String[] args) {// 文件路径String filePath = "myInfo.txt";// 向文件输入信息writeToFile(filePath, "Name: John Doe\nAge: 25\nOccupation: Developer");// 从文件读取信息并打印在终端String fileContent = readFromFile(filePath);System.out.println("File Content:\n" + fileContent);}// 向文件写入信息private static void writeToFile(String filePath, String content) {try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {writer.write(content);} catch (IOException e) {e.printStackTrace();}}// 从文件读取信息private static String readFromFile(String filePath) {StringBuilder content = new StringBuilder();try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {String line;while ((line = reader.readLine()) != null) {content.append(line).append("\n");}} catch (IOException e) {e.printStackTrace();}return content.toString();} }
自行设计一个界面,至少包含3个基本的组件,程序包含监听事件,Java程序
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;public class SimpleGUIExample {public static void main(String[] args) {// 创建 JFrame 实例JFrame frame = new JFrame("Simple GUI Example");// 设置关闭操作frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 创建组件JButton button = new JButton("点击我");JTextField textField = new JTextField(20);JLabel label = new JLabel("显示区域:");// 创建面板JPanel panel = new JPanel();panel.setLayout(new FlowLayout());// 添加组件到面板panel.add(textField);panel.add(button);panel.add(label);// 添加面板到框架frame.getContentPane().add(BorderLayout.CENTER, panel);// 添加按钮点击事件监听器button.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {// 按钮点击时更新标签内容label.setText("显示区域: " + textField.getText());}});// 设置框架大小frame.setSize(300, 150);// 设置框架可见frame.setVisible(true);} }
编写多线程程序,用两种方法(继承Thread,实现Runnable,卡里的前,每增加一元,自己的java技能,每秒钟增加一点
class CardThread extends Thread {private int balance = 0; // 初始卡里的金额private int javaSkill = 0; // 初始Java技能点数public void run() {while (true) {try {Thread.sleep(1000); // 线程休眠一秒钟balance++; // 每秒钟卡里的金额增加一元javaSkill++; // 每秒钟Java技能增加一点System.out.println("卡里的金额:" + balance + " 元,Java技能:" + javaSkill + " 点");} catch (InterruptedException e) {e.printStackTrace();}}} }public class ThreadExample {public static void main(String[] args) {CardThread thread = new CardThread();thread.start(); // 启动线程} }
class CardRunnable implements Runnable {private int balance = 0; // 初始卡里的金额private int javaSkill = 0; // 初始Java技能点数public void run() {while (true) {try {Thread.sleep(1000); // 线程休眠一秒钟balance++; // 每秒钟卡里的金额增加一元javaSkill++; // 每秒钟Java技能增加一点System.out.println("卡里的金额:" + balance + " 元,Java技能:" + javaSkill + " 点");} catch (InterruptedException e) {e.printStackTrace();}}} }public class RunnableExample {public static void main(String[] args) {CardRunnable cardRunnable = new CardRunnable();Thread thread = new Thread(cardRunnable);thread.start(); // 启动线程} }
用循环语句打印A-Z共26个字母
public class PrintAlphabets {public static void main(String[] args) {// Using a for loop to print A-Zfor (char ch = 'A'; ch <= 'Z'; ch++) {System.out.print(ch + " ");}// If you want to print on new lines:/*for (char ch = 'A'; ch <= 'Z'; ch++) {System.out.println(ch);}*/} }
从键盘输入一个整数到变量a,b,c中,然后由小到大的顺序输出
import java.util.Scanner;public class SortNumbers {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);// 输入三个整数System.out.print("请输入第一个整数 (a): ");int a = scanner.nextInt();System.out.print("请输入第二个整数 (b): ");int b = scanner.nextInt();System.out.print("请输入第三个整数 (c): ");int c = scanner.nextInt();// 关闭输入流scanner.close();// 排序并输出System.out.println("由小到大的顺序输出:");displaySortedNumbers(a, b, c);}private static void displaySortedNumbers(int a, int b, int c) {int temp;// 使用冒泡排序进行排序for (int i = 0; i < 2; i++) {for (int j = 0; j < 2 - i; j++) {if (a > b) {temp = a;a = b;b = temp;}if (b > c) {temp = b;b = c;c = temp;}}}// 输出排序后的结果System.out.println(a + " " + b + " " + c);} }
相关文章:
JAVA编程题系列——涵盖几乎所有java内容
自己定义一个类,有static属性和构造方法,有构造方法重载,有其他方法(方法有对String类型操作) public class MyClass {// 静态属性public static String staticProperty "Static Property";// 成员变量priv…...
【Android12】Monkey压力测试源码执行流程分析
Monkey压力测试源码执行流程分析 Monkey是Android提供的用于应用程序自动化测试、压力测试的测试工具。 其源码路径(Android12)位于 /development/cmds/monkey/部署形式为Java Binary # development/cmds/monkey/Android.bp // Copyright 2008 The Android Open Source Proj…...
Java架构师之路八、安全技术:Web安全、网络安全、系统安全、数据安全等
目录 Web安全: 网络安全: 系统安全: 数据安全: Java架构师之路七、大数据:Hadoop、Spark、Hive、HBase、Kafka等-CSDN博客Java架构师之路九、设计模式:常见的设计模式,如单例模式、工厂模式…...
Codeforces Round 240 (Div. 1) C. Mashmokh and Reverse Operation(分治+逆序对)
原题链接:C. Mashmokh and Reverse Operation 题目大意: 给出一个长度为 2 n 2^{n} 2n 的正整数数组 a a a ,再给出 m m m 次操作。 每次操作给出一个数字 q q q ,把数组分为 2 n − q 2^{n-q} 2n−q 个长度为 2 q 2^{q} 2…...
SpringBoot源码解读与原理分析(三十二)SpringBoot整合JDBC(一)JDBC组件的自动装配
文章目录 前言第10章 SpringBoot整合JDBC10.1 SpringBoot整合JDBC的项目搭建10.1.1 初始化数据库10.1.2 整合项目10.1.2.1 导入JDBC和MySQL驱动依赖10.1.2.2 配置数据源 10.1.3 编写业务代码10.1.3.1 编写与t_user表对应的实体类User10.1.3.2 编写Dao层代码10.1.3.3 编写Servic…...
petalinux_zynq7 驱动DAC以及ADC模块之五:nodejs+vue3实现web网页波形显示
前文: petalinux_zynq7 C语言驱动DAC以及ADC模块之一:建立IPhttps://blog.csdn.net/qq_27158179/article/details/136234296petalinux_zynq7 C语言驱动DAC以及ADC模块之二:petalinuxhttps://blog.csdn.net/qq_27158179/article/details/1362…...
Android java中内部类的使用
一.成员内部类 实验1:成员内部类 class Outer {private int a 10;class Inner {public void printInfo(){System.out.println("a "a);}}}public class InnerDemo {public static void main(String args[]) {Outer o new Outer();Outer.Inner i o.new…...
llm的inference(二)
文章目录 Tokenizer分词1.单词分词法2.单字符分词法3.子词分词法BPE(字节对编码,Byte Pair Encoding)WordPieceUnigram Language Model(ULM) embedding的本质推理时的一些指标参考链接 Tokenizer 在使用模型前,都需要将sequence过一遍Tokenizer…...
pytorch -- torch.nn.Module
基础 torch.nn 是 PyTorch 中用于构建神经网络的模块。nn.Module包含网络各层的定义及forward方法。 在用户自定义神经网络时,需要继承自nn.Module类。通过继承 nn.Module 类,您可以创建自己的神经网络模型,并定义模型的结构和操作。 torch.n…...
Microsoft Edge 越用越慢、超级卡顿?网页B站播放卡顿?
记录10个小妙招 Microsoft Edge 启动缓慢、菜单导航卡顿、浏览响应沉闷?这些情况可能是由于系统资源不足或浏览器没及时更新引起的。接下来,我们将介绍 10 种简单的方法,让 Edge 浏览器的速度重新起飞。 基础检查与问题解决 如果 Microsoft…...
XGB-9: 分类数据
从1.5版本开始,XGBoost Python包为公共测试提供了对分类数据的实验性支持。对于数值数据,切分条件被定义为 v a l u e < t h r e s h o l d value < threshold value<threshold ,而对于分类数据,切分的定义取决于是否使用…...
FreeRTOS学习第8篇--同步和互斥操作引子
目录 FreeRTOS学习第8篇--同步和互斥操作引子同步和互斥概念实现同步和互斥的机制PrintTask_Task任务相关代码片段CalcTask_Task任务相关代码片段实验现象本文中使用的测试工程 FreeRTOS学习第8篇–同步和互斥操作引子 本文目标:学习与使用FreeRTOS中的同步和互斥操…...
c++STL容器的使用(vector, list, map, set等),c++STL算法的理解与使用(sort, find, binary_search等)
cSTL容器的使用(vector, list, map, set等) 在C的STL(Standard Template Library)中,容器是重要的一部分,它们提供了各种数据结构来存储和管理数据。以下是一些常见的STL容器及其使用方法的简要说明&#x…...
选择VR全景行业,需要了解哪些内容?
近年来,随着虚拟现实、增强现实等技术的持续发展,VR全景消费市场得以稳步扩张。其次,元宇宙行业的高速发展,也在进一步拉动VR全景技术的持续进步,带动VR产业的高质量发展。作为一种战略性的新兴产业,国家和…...
830. 单调栈
Problem: 830. 单调栈 文章目录 思路解题方法复杂度Code 思路 这是一个单调栈的问题。单调栈是一种特殊的栈结构,它的特点是栈中的元素保持单调性。在这个问题中,我们需要找到每个元素左边第一个比它小的元素,这就需要使用到单调递增栈。 我们…...
H5 个人引导页官网型源码
H5 个人引导页官网型源码 源码介绍:源码无后台、无数据库,H5自检测适应、无加密,直接修改可用。 源码含有多选项,多功能。可展示自己站点、团队站点。手机电脑双端。 下载地址: https://www.changyouzuhao.cn/1434.…...
【Linux】部署前后端分离项目---(Nginx自启,负载均衡)
目录 前言 一 Nginx(自启动) 2.1 Nginx的安装 2.2 设置自启动Nginx 二 Nginx负载均衡tomcat 2.1 准备两个tomcat 2.1.1 复制tomcat 2.1.2 修改server.xml文件 2.1.3 开放端口 2.2 Nginx配置 2.2.1 修改nginx.conf文件 2.2.2 重启Nginx服务 2…...
WPF Style样式设置
1.本window设置样式 <Window x:Class"WPF_Study.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/expressi…...
【STM32】软件SPI读写W25Q64芯片
目录 W25Q64模块 W25Q64芯片简介 硬件电路 W25Q64框图 Flash操作注意事项 状态寄存器 编辑 指令集 INSTRUCTIONS编辑 编辑 SPI读写W25Q64代码 硬件接线图 MySPI.c MySPI.h W25Q64 W25Q64.c W25Q64.h W25Q64_Ins.h main.c 测试 SPI通信(W25…...
普通中小学校管理信息系统V1.1
普通中小学校管理信息系统 Ordinary Primary and Secondary Schools Management Information System 普通中小学校管理信息系统 Ordinary Primary and Secondary Schools Management Information System...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战
在现代战争中,电磁频谱已成为继陆、海、空、天之后的 “第五维战场”,雷达作为电磁频谱领域的关键装备,其干扰与抗干扰能力的较量,直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器,凭借数字射…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
