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...

【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
Modbus RTU与Modbus TCP详解指南
目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...

【UE5 C++】通过文件对话框获取选择文件的路径
目录 效果 步骤 源码 效果 步骤 1. 在“xxx.Build.cs”中添加需要使用的模块 ,这里主要使用“DesktopPlatform”模块 2. 添加后闭UE编辑器,右键点击 .uproject 文件,选择 "Generate Visual Studio project files",重…...
LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
🧠 LangChain 中 TextSplitter 的使用详解:从基础到进阶(附代码) 一、前言 在处理大规模文本数据时,特别是在构建知识库或进行大模型训练与推理时,文本切分(Text Splitting) 是一个…...

PydanticAI快速入门示例
参考链接:https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...