当前位置: 首页 > news >正文

Java-常用API

1-Java API

指的就是 JDK 中提供的各种功能的 Java类。

2-Scanner基本使用

Scanner:

  • 一个简单的文本扫描程序,可以获取基本类型数据和字符串数据

构造方法:

  • Scanner(InputStream source):创建 Scanner 对象

  • System.in:对应的是InputStream类型,可以表示键盘输入

  • Scanner sc = new Scanner(System.in);

成员方法:

  • int nextInt():获取一个int类型的数据

  • int i = sc.nextInt();

 举例

import java.util.Scanner;/*Scanner的基本使用*/
public class ScannerDemo {public static void main(String[] args) {//Scanner(InputStream source):创建 Scanner 对象Scanner sc = new Scanner(System.in);//int nextInt():获取一个int类型的数据System.out.println("请输入一个整数:");int i = sc.nextInt();//输出获取到的数据System.out.println("你输入的数据是:" + i);}
}

3-Random的基本使用

Random:

  • 该类的实例用于生成随机数

构造方法:

  • Random():创建一个新的随机数生成器

成员方法:

  • int nextInt(int bound):获取一个int类型的随机数,参数bound表示获取到的随机数在[0,bound)之间

举例

import java.util.Random;/*Random的基本使用*/
public class RandomDemo {public static void main(String[] args) {//Random():创建一个新的随机数生成器Random r = new Random();//int nextInt(int bound):获取一个int类型的随机数,参数bound表示获取到的随机数在[0,bound)之间
//        int i = r.nextInt(10);
//        System.out.println(i);//        for (int i=1; i<=10; i++) {
//            int j = r.nextInt(10);
//            System.out.println(j);
//        }//需求:如何获取1-100之间的随机数呢?
//        int number = r.nextInt(100);//0-99
//        int number = r.nextInt(101);//0-100int number = r.nextInt(100) + 1;System.out.println(number);}
}

4-GUI的基本使用

  • GUI:Graphical User Interface(图形用户接口)

  • 用图形的方式,来显示计算机操作的界面

给大家举个例子,就像是这个样子

组件:

  • 基本组件:具有图形表示的对象

  • 容器组件:是可以添加组件的组件。也就是在容器中可以通过add方法添加组件,既可以添加基本组件,也可以添加容器组件。

基本组件:

  • JButton,这是按钮

  • JLabel,这是用来显示文本内容的,或者展示图片使用

  • JTextFile,这是文本框,用来输入内容的

  • JTextArea,这是文本域,用来输入多行多列的数据的

容器组件:

  • 面板也是一个容器,我们常用JPanel

  • 窗体,下面是Frame,这是awt包下,而我们使用的是JFrame,这是swing包下。

4-1JFrame

JFrame:

  • 是一个顶层窗口

构造方法:

  • JFrame():构造一个最初不可见的新窗体

成员方法:

  • void setVisible(boolean b):显示或隐藏此窗体具体取决于参数b的值

  • void setSize(int width, int height):调整此组件的大小,使其宽度为width,高度为height,单位是像素

  • void setTitle(String title):设置窗体标题

  • void setLocationRelativeTo(Component c):设置位置,值为null,则窗体位于屏幕中央

  • void setDefaultCloseOperation(int operation):设置窗体关闭时默认操作

    • 整数3表示:窗口关闭时退出应用程序

  • void setAlwaysOnTop(boolean alwaysOnTop):设置此窗口是否应始终位于其他窗口之上

举例

import javax.swing.*;public class JFrameDemo02 {public static void main(String[] args) {//创建窗体对象JFrame jf = new JFrame();//void setTitle(String title):设置窗体标题jf.setTitle("百度一下,你就知道");//设置窗体大小jf.setSize(400, 300);//void setDefaultCloseOperation(int operation):设置窗体关闭时默认操作(整数3表示:窗口关闭时退出应用程序)jf.setDefaultCloseOperation(3);//void setLocationRelativeTo(Component c):设置位置,值为null,则窗体位于屏幕中央jf.setLocationRelativeTo(null);//void setAlwaysOnTop(boolean alwaysOnTop):设置此窗口是否应始终位于其他窗口之上jf.setAlwaysOnTop(true);//设置窗体可见jf.setVisible(true);}
}

4-2JButton

JButton:

  • 按钮的实现

构造方法:

  • JButton(String text):创建一个带文本的按钮

成员方法:

  • void setSize(int width, int height):设置大小

  • void setLocation(int x, int y):设置位置(x坐标,y坐标)

  • void setBounds(int x, int y, int width, int height):设置位置和大小

  • 取消窗体默认布局:窗体对象.setLayout(null);

  • 把按钮添加到窗体:窗体对象.add(按钮对象);

举例

import javax.swing.*;public class JButtonDemo {public static void main(String[] args) {//创建窗体对象JFrame jf = new JFrame();jf.setTitle("窗口中添加按钮");jf.setSize(400, 300);jf.setDefaultCloseOperation(3);jf.setLocationRelativeTo(null);jf.setAlwaysOnTop(true);jf.setLayout(null); //取消窗体的默认布局//JButton(String text):创建一个带文本的按钮btn.setBounds(100,100,100,20);JButton btn2 = new JButton("我是按钮2");btn2.setBounds(100,120,100,20);jf.add(btn);jf.add(btn2);//设置窗体可见jf.setVisible(true);}
}

4-3JLabel

JLable:

  • 短文本字符串或图像的显示区域

构造方法:

  • JLabel(String text):使用指定的文本创建 JLabel实例

  • JLabel(Icon image):使用指定的图像创建 JLabel实例

    • ImageIcon(String filename):从指定的文件创建ImageIcon

    • 文件路径:绝对路径和相对路径

    • 绝对路径:完整的路径名,不需要任何其他信息就可以定位它所表示的文件

      • 例如:D:\IdeaProjects\javase_code\itheima-api-gui\images\mn.png

    • 相对路径:必须使用取自其他路径名的信息进行解释

      • 例如:itheima-api-gui\images\mn.png

成员方法:

  • void setBounds(int x, int y, int width, int height):设置位置和大小

5-事件监听机制

主要概念和组成部分:

  1. 事件源(Event Source)

    • 事件源是能够触发事件的对象,例如按钮、文本框、窗口等。在Java中,事件源通常是实现了事件监听接口的组件或对象。
  2. 事件(Event)

    • 事件是指在特定条件下发生的动作或状态改变,例如按钮被点击、鼠标移动等。
  3. 事件监听器(Event Listener)

    • 事件监听器是一个接口,定义了处理特定类型事件的方法。在Java中,事件监听器通常继承自 java.util.EventListener 接口。
  4. 事件处理器(Event Handler)

    • 事件处理器是实现了事件监听器接口的具体类,它包含了处理事件的代码逻辑。

举例

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;/*事件监听机制*/
public class ActionListenerDemo {public static void main(String[] args) {//创建窗体对象JFrame jf = new JFrame();jf.setTitle("事件监听机制");jf.setSize(400, 300);jf.setDefaultCloseOperation(3);jf.setLocationRelativeTo(null);jf.setAlwaysOnTop(true);jf.setLayout(null);//创建按钮JButton jButton = new JButton("你点我啊");jButton.setBounds(0, 0, 100, 100);jf.add(jButton);jButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {System.out.println("你点我啊");}});jf.setVisible(true);}
}

相关文章:

Java-常用API

1-Java API &#xff1a; 指的就是 JDK 中提供的各种功能的 Java类。 2-Scanner基本使用 Scanner&#xff1a; 一个简单的文本扫描程序&#xff0c;可以获取基本类型数据和字符串数据 构造方法&#xff1a; Scanner(InputStream source)&#xff1a;创建 Scanner 对象 Sy…...

Python从Excel表中查找指定数据填入新表

#读取xls文件中的数据 import xlrd file "原表.xls" wb xlrd.open_workbook(file) #读取工作簿 ws wb.sheets()[0] #选第一个工作表 data [] for row in range(7, ws.nrows): name ws.cell(row, 1).value.strip() #科室名称 total1 ws.cell(row, 2…...

从零开始实现大语言模型(三):Token Embedding与位置编码

1. 前言 Embedding是深度学习领域一种常用的类别特征数值化方法。在自然语言处理领域&#xff0c;Embedding用于将对自然语言文本做tokenization后得到的tokens映射成实数域上的向量。 本文介绍Embedding的基本原理&#xff0c;将训练大语言模型文本数据对应的tokens转换成Em…...

视频怎么压缩变小?最佳视频压缩器

即使在云存储和廉价硬盘空间时代&#xff0c;大视频文件使用起来仍然不方便。无论是存储、发送到电子邮件帐户还是刻录到 DVD&#xff0c;拥有最好的免费压缩软件可以确保您快速缩小文件大小&#xff0c;而不必担心视频质量下降。继续阅读以探索一些顶级最佳 免费视频压缩器选项…...

LLM - 绝对与相对位置编码 与 RoPE 旋转位置编码 源码

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/140281680 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Transformer 是基于 MHSA (多头自注意力),然而,MHSA 对于位置是不敏感…...

B3917 [语言月赛 202401] 小跳蛙

OK 挠~ stop here~ 好啊&#xff0c;现在呢&#xff0c;把手头的事情先放一放啊&#xff0c;我们来做道练习 OK&#xff1f; 好啊来&#xff1a; 小跳蛙 题目描述 有 &#x1d45b;−1 只小跳蛙在池塘中&#xff0c;依次被编号为 1,2,⋯ ,&#x1d45b;−1。池塘里有 &am…...

Bash ——shell

Bash作为用户与操作系统之间的接口&#xff0c;让用户通过命令行输入各种指令来控制和操作计算机系统。 shell的两种解释&#xff1a; 1.linux命令解释器 Terminal 终端 ——》shell命令 ——》 Linux kernel &#xff08;内核&#xff09; Linux内核的作用&#xff1a; 1.…...

PyTorch复现PointNet——模型训练+可视化测试显示

因为项目涉及到3D点云项目&#xff0c;故学习下PointNet这个用来处理点云的神经网络 论文的话&#xff0c;大致都看了下&#xff0c;网络结构有了一定的了解&#xff0c;本博文主要为了下载调试PointNet网络源码&#xff0c;训练和测试调通而已。 我是在Anaconda下创建一个新的…...

分享五款软件,成为高效生活的好助手

​ 给大家分享一些优秀的软件工具,是一件让人很愉悦的事情&#xff0c;今天继续带来5款优质软件。 1.图片放大——Bigjpg ​ Bigjpg是一款图片放大软件&#xff0c;采用先进的AI算法&#xff0c;能够在不损失图片质量的前提下&#xff0c;将低分辨率图片放大至所需尺寸。无论…...

代码随想录算法训练营DAY58|101.孤岛的总面积、102.沉没孤岛、103. 水流问题、104.建造最大岛屿

忙。。。写了好久。。。。慢慢补吧。 101.孤岛的总面积 先把周边的岛屿变成水dfs def dfs(x, y, graph, s):if x<0 or x>len(graph) or y<0 or y>len(graph[0]) or graph[x][y]0:return sgraph[x][y]0s1s dfs(x1, y, graph, s)s dfs(x-1, y, graph, s)s dfs(…...

韦尔股份:深蹲起跳?

利润大增7倍&#xff0c;是反转信号还是回光返照&#xff1f; 今天我们聊聊光学半导体龙头——韦尔股份。 上周末&#xff0c;韦尔股份发布半年业绩预告&#xff0c;预计上半年净利润13至14亿&#xff0c;同比增幅高达 754%至 819%。 然而&#xff0c;回首 2023 年它的净利仅 …...

docs | 使用 sphinx 转化rst文件为html文档

1. 效果图 book 风格。 优点&#xff1a; 极简风格右边有标题导航左侧是文件导航&#xff0c;可隐藏 2. 使用方式 reST 格式&#xff0c;比markdown格式更复杂。 推荐使用 book 风格。 文档构建工具是 sphinx&#xff0c;是一个python包。 $ pip3 list | grep -i Sphinx …...

【ChatGPT 消费者偏好】第二弹:ChatGPT在日常生活中的使用—推文分享—2024-07-10

今天的推文主题还是【ChatGPT & 消费者偏好】 第一篇&#xff1a;哪些动机因素和技术特征的组合能够导致ChatGPT用户中高和低的持续使用意图。第二篇&#xff1a;用户对ChatGPT的互动性、性能期望、努力期望以及社会影响如何影响他们继续使用这些大型语言模型的意向&#x…...

Webpack配置及工作流程

Webpack是一个现代JavaScript应用程序的静态模块打包器&#xff08;module bundler&#xff09;。当Webpack处理应用程序时&#xff0c;它会在内部构建一个依赖图&#xff08;dependency graph&#xff09;&#xff0c;该图会映射项目所需的每个模块&#xff0c;并生成一个或多…...

华为ensp实现防火墙的区域管理与用户认证

实验环境 基于该总公司内网&#xff0c;实现图片所在要求 后文配置请以本图为准 接口配置与网卡配置 1、创建vlan 2、防火墙g0/0/0与云页面登录 登录admin,密码Admin123&#xff0c;自行更改新密码 更改g0/0/0口ip&#xff0c;敲下命令service-manage all permit 网卡配置…...

深入解析 Laravel 策略路由:提高应用安全性与灵活性的利器

引言 Laravel 是一个功能强大的 PHP Web 应用框架&#xff0c;以其优雅和简洁的语法而受到开发者的喜爱。在 Laravel 中&#xff0c;路由是应用中非常重要的一部分&#xff0c;它负责将用户的请求映射到相应的控制器方法上。Laravel 提供了多种路由方式&#xff0c;其中策略路…...

Java | Leetcode Java题解之第228题汇总区间

题目&#xff1a; 题解&#xff1a; class Solution {public List<String> summaryRanges(int[] nums) {List<String> ans new ArrayList<>();for (int i 0, j, n nums.length; i < n; i j 1) {j i;while (j 1 < n && nums[j 1] num…...

使用Simulink基于模型设计(三):建模并验证系统

可以对系统结构中的每个组件进行建模&#xff0c;以表示该组件的物理行为或功能行为。通过使用测试数据对组件进行仿真&#xff0c;以验证它们的基本行为。 打开系统布局 对各个组件进行建模时&#xff0c;需要从大局上把握整个系统布局。首先加载布局模型。这里以simulink自…...

基于go 1.19的站点模板爬虫

好像就三步: 1 建立http连接 2 解析html内容 3 递归遍历 创建一个基于 Go 1.19 的网站模板爬虫主要涉及几个步骤&#xff0c;包括设置 HTTP 客户端来获取网页内容、解析 HTML 来提取所需的数据&#xff0c;以及处理可能的并发和错误。下面我会给出一个简单的例子来说明如何…...

0基础学会在亚马逊云科技AWS上搭建生成式AI云原生Serverless问答QA机器人(含代码和步骤)

小李哥今天带大家继续学习在国际主流云计算平台亚马逊云科技AWS上开发生成式AI软件应用方案。上一篇文章我们为大家介绍了&#xff0c;如何在亚马逊云科技上利用Amazon SageMaker搭建、部署和测试开源模型Llama 7B。下面我将会带大家探索如何搭建高扩展性、高可用的完全托管云原…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日&#xff0c;2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席&#xff0c;并作《智能体在安全领域的应用实践》主题演讲&#xff0c;分享了在智能体在安全领域的突破性实践。他指出&#xff0c;百度通过将安全能力…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

智能AI电话机器人系统的识别能力现状与发展水平

一、引言 随着人工智能技术的飞速发展&#xff0c;AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术&#xff0c;在客户服务、营销推广、信息查询等领域发挥着越来越重要…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...

Matlab实现任意伪彩色图像可视化显示

Matlab实现任意伪彩色图像可视化显示 1、灰度原始图像2、RGB彩色原始图像 在科研研究中&#xff0c;如何展示好看的实验结果图像非常重要&#xff01;&#xff01;&#xff01; 1、灰度原始图像 灰度图像每个像素点只有一个数值&#xff0c;代表该点的​​亮度&#xff08;或…...

GraphRAG优化新思路-开源的ROGRAG框架

目前的如微软开源的GraphRAG的工作流程都较为复杂&#xff0c;难以孤立地评估各个组件的贡献&#xff0c;传统的检索方法在处理复杂推理任务时可能不够有效&#xff0c;特别是在需要理解实体间关系或多跳知识的情况下。先说结论&#xff0c;看完后感觉这个框架性能上不会比Grap…...