E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
iOS动画详解
ax
ios
.js 原理(ax
ios
.get()返回值是promise对象)
<metahttp-equiv="X-UA-Compatible"
^O^Come on
·
2024-09-05 04:03
笔记
javascript
前端
json
Vue笔记九:ax
ios
原理之promise
ax
ios
是基于promise的HTTP库,支持promise所有的APIpromise概念promise是JS中解决异步编程的语法,从语法上来讲,promise是一个构造函数,从功能来讲,用promise
努力努力再努力dyx
·
2024-09-05 04:03
Vue
vue.js
javascript
前端
【
iOS
】暑假第三周任务总结
文章目录折叠cell聊天室弹出键盘,屏幕上移管理系统属性关键字折叠cell完善了share里关于折叠cell的使用在share里写的折叠cell比较简单,仅仅使用一个button控制一个tableView的frame,在button关闭时,tableView的frame只是显示第一个cell,当button开启时,改变tableView的frame,将tableView中的cell全部显示出来聊天
kochunk1t
·
2024-09-05 04:01
ios
【
iOS
】折叠cell
折叠cell前言实现原理代码实现原理讲解代码展示前言暑假在仿写3Gshare时使用到了折叠cell,故而现在来总结一下折叠cell,如有不足,还望指正。实现原理在OC中,scrollview是tableview的父类,要想实现折叠cell的效果,我们需要控制在点击按钮前后,tableview的高度变换,同时在点击cell时,将点击的cell放在数组的第一个元素,同时收回展示的cell即可。这样我们
键盘敲没电
·
2024-09-05 04:31
ios
xcode
objective-c
【Java 学习】:内部类
详解
详谈Java内部类本文将通过Java内部类是什么,为什么被广泛使用,以及又该如何去使用这三个方面来详细讲解其相关知识。文章目录1.内部类是什么2.为什么要使用内部类3.如何使用内部类成员内部类静态内部类局部内部类匿名内部类总结1.内部类是什么当一个事物的内部,还有一个部分需要一个完整的结构进行描述,而这个内部的完整的结构又只为外部事物提供服务,那么这个内部的完整结构最好使用内部类。在Java中,
island1314
·
2024-09-05 04:00
java学习
学习
后台数据管理系统 - 项目架构设计
黑马程序员-大事件接口根路径:http://big-event-vue-api-t.itheima.net本项目的技术栈本项目技术栈基于ES6、vue3、pinia、vue-router、vite、ax
ios
风流野趣fly
·
2024-09-05 04:00
vue.js
前端
javascript
vscode
css
前端框架
webpack
异或运算
详解
目录异或运算的含义异或运算的性质异或运算的应用不用额外变量交换两个整数的值经典例题提取出最右侧的1找到出现了K次的数异或运算的含义异或运算(^)简单来说就是相同为0,不同为1;还有一种理解就是无进位相加,例如对于两个变量a=100111,b=011101,a^b=111010,也就是两者相加,不进位。异或运算的性质(1)0^N=N,N^N=0;(2)异或运算满足交换律和结合律,a^b=b^a(a^
互联网的猫
·
2024-09-05 04:28
数据结构与算法进阶
位运算与进制转换
数据结构
算法
java
番茄小说邀请码是多少及大全分享(
详解
番茄小说快速获取金币方法)鼓颠
番茄小说邀请码怎么填写但很多人却不知道在哪里填写邀请码。下面就来一起看看相关的教程吧!。今日头条极速版邀请码:V934425438,如图所示,不要搞错了;(填写额外哦)很多网友问小编有关番茄免费小说填邀请码账号异常?最新番茄免费小说填邀请码显示账号异常?下面小编整理了番茄免费小说填邀请码的教程视频,让我们来详细的了解一下番茄免费小说填邀请码账号异常,番茄小说邀请码为V721593338或V9344
凌风导师
·
2024-09-05 03:33
B
IOS
学习实战之SMB
IOS
最近事情太多,又有一段时间没做笔记了,有时候也在研究这个百敖的UIAPP框架和昆仑的UIAPP框架,思绪短时间内难理清,还是先写下SMB
IOS
的有关内容吧,本节主要以实践为主,仅做记录EFI_SMB
IOS
_PROTOCOL
潇洒Anthony
·
2024-09-05 03:22
BIOS学习实战
UEFI
python面向对象
详解
什么是面向对象?面向对象是一种编写代码的思维方式:程序是由什么构成的。对于面向对象,肯定是基于类进行编码,与之前基于过程进行编码相对。什么是类?所谓类就是对客观世界一类事物的抽象化,把同一类事物的共有属性,共有行为抽取出来。例如:床类,都有长宽高属性,有用于提供睡觉场所的作用。这里的作用用类里面的方法来代替。属性表示类的特点,方法表示类的功能。通常类就是由属性和方法组成。什么是类的实例化?就是在某
凌航
·
2024-09-05 03:50
UEFI应用与编程--SmB
ios
SmB
ios
List.c#include#include#include#include#include"UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.h
qyqcs
·
2024-09-05 03:22
UEFI应用与编程
uefi
edk2
udk
bios
smbios
ami uefi b
ios
借鸡下蛋 之 在线更新b
ios
之内容
#include#include//#include#include#include#include#include#include#include#include#include#include"EfiKey.h"#include#include#include//#include//#include#include"HomeWorkDxe.h"externEFI_BOOT_SERVICES*g
dddddppppp123
·
2024-09-05 03:51
基于Frenet坐标系的无人车路径规划:ROS实现与Python程序
详解
基于Frenet坐标系的无人车路径规划:ROS实现与Python程序
详解
前言在自动驾驶和无人车技术快速发展的今天,路径规划是实现车辆自主行驶的核心技术之一。
快撑死的鱼
·
2024-09-05 02:18
算法杂谈
python算法解析
硬件算法实践
python
开发语言
C#中List集合使用Remove方法
详解
——List使用Remove方法需要注意的坑?
目录一、基本使用1、简单类型的例子2、复杂类型的例子二、思考三、深度解析四、正确的使用方式1、重写Equals和GetHashCode2、使用LINQ的FirstOrDefault方法五、性能考虑六、注意事项总结在C#中,List是一个常用的数据结构,它提供了一系列操作方法来管理其内部的元素。Remove方法是其中一个用于移除元素的重要方法。本文将深入探讨List.Remove方法的使用、底层原理
猿享天开
·
2024-09-05 02:46
学懂C#-高级编程技术精讲
c#
开发语言
【Docker系列】docker缓存
详解
欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。推荐:kwan的首页,持续学习,不断总结,共同进步,活到老学到老导航檀越剑指大厂系列:全面总结java核心技术,jvm,并发编程redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,
Kwan的解忧杂货铺@新空间代码工作室
·
2024-09-05 02:45
s11
Docker系列
docker
缓存
容器
【C语言】操作符
详解
(下)
.、->)7.1[]下标引用操作符7.2()函数调用操作符7.3访问一个结构成员8.关系操作符9.操作符的属性总结前言操作数
详解
(上)的链接:http://t.c
谦虚进步
·
2024-09-05 02:44
C语言
c语言
开发语言
java守护线程的使用场景_
详解
Java线程-守护线程与用户线程
干java开发这么多年,之前一直没留意java进程还区分守护进程和用户进程。守护进程这个概念最早还是在linux系统中接触的,直到近期使用java开发心跳检测功能时,使用Timer时才发现原来java也有守护线程的概念。1.Java线程1.1守护线程与用户线程Java线程分为守护线程(DaemonThread)和用户线程(UserThread)两类.通常情况下,我们使用Thread创建的线程在默认
桦雪Monica
·
2024-09-05 01:41
java守护线程的使用场景
Android音频模块启动流程分析
1)设备开机,系统启动时将执行/system/etc/init/aud
ios
erver.rc,运行/system/bin/目录下的aud
ios
erver服务。
tron
·
2024-09-05 01:11
android
audio专题
Redis缓存穿透、缓存击穿、缓存雪崩
详解
及解决方案
引言缓存系统如Redis在提高应用响应速度和减轻数据库负担中扮演了至关重要的角色。然而,在使用过程中可能遇到缓存穿透、缓存击穿和缓存雪崩等问题,这些问题不仅影响系统性能,还可能导致系统瘫痪。本文深入探讨这三个问题的成因、影响,并提供有效的解决策略,最后通过代码示例展示如何在实际项目中实施这些策略。第一部分:问题定义与影响1.缓存穿透定义:请求查询不存在的数据,由于缓存未命中导致每次请求都要访问数据
CopyLower
·
2024-09-05 01:09
Java
学习
数据库
缓存
redis
数据库
SpringBoot中pom.xml配置
详解
第一章
pom.xml是Maven项目的核心配置文件,负责管理项目的依赖、插件、构建配置等。对于SpringBoot项目而言,pom.xml文件显得尤为重要。其中,你可以配置项目的资源文件以及其他相关内容。在SpringBoot的pom.xml文件中,通常会包含一个标签,该标签用于指定资源文件的路径和名称。通过这个标签,你可以定义项目中需要被打包的资源文件的路径,并且可以指定这些资源文件在最终的构建过程中
Mars-to
·
2024-09-05 00:05
java
spring
boot
xml
后端
2018-4-7
今天我读了《
动画
中国》里的孙悟空如意金箍棒的故事,讲的是孙悟空想要一个比较厉害的兵器,就来到东海龙宫里找龙王要兵器,一开始龙王想用一些兵器库普通兵器把孙悟空给打发走,可是孙悟空都看不上。
全恩铭
·
2024-09-05 00:46
Android使用Paint 和 Canvas 的相关知识,自定义 View 实现一系列效果
动画
**setSrokeJoin(Paint.Joinjoin);*设置绘制时各图形的结合方式,如平滑效果等**setStrokeWidth(floatwidth);*当画笔样式为STROKE或FILL_OR_STROKE时,设置笔刷的粗细度**setXfermode(Xfermodexfermode);*设置图形重叠时的处理方式,如合并,取交集或并集,经常用来制作橡皮的擦除效果**2.文本绘制*se
Android高级
·
2024-09-05 00:34
Android
经验分享
面试
android
【前端】input表单 type属性
详解
前言前端页面开发中,html表单是网页中最常见元素之一,通过form元素定义表单,表单中包含各种表单项。input元素可以用来生成一个供用户输入数据的简单文本框。在默认的情况下,什么样的数据均可以输入。而通过不同的type属性值,可以限制输入的内容。代码实例:定义一个单行输入文本框。常见的type属性值1、text一个单行文本框,默认属性值2、password隐藏字符的密码框3、search搜索框
A_aspectJ项目开发
·
2024-09-05 00:33
JavaWeb技术
前端
javascript
开发语言
推荐使用Xcode开发者磁盘映像项目
Xcode_Developer_Disk_Images项目地址:https://gitcode.com/gh_mirrors/xc/Xcode_Developer_Disk_Images项目介绍在开发
iOS
龙琴允
·
2024-09-04 23:58
【Xcode】Xcode基本使用指引
文章目录Xcode安装及iphone模拟器的安装Xcode中Debug和Release的切换Xcode中控件的使用Xcode工程的基本组成XcodeUI基本设计及使用
iOS
开发项目中的日志系统静态库支持多种架构制作
ADi_hhh
·
2024-09-04 22:56
iOS
xcode
macos
ide
MySQL的real数据类型
详解
MySQL的real数据类型
详解
MySQL是一款常用的关系型数据库管理系统,支持多种数据类型,包括整型、字符串、日期以及浮点数等。其中,real是MySQL中常用的浮点数数据类型。
magic33416563
·
2024-09-04 22:50
MySQL
sql专栏
mysql
数据库
ListBox等控件的SelectedItem,SelectedValue,SelectedValuePath属性
详解
引言初学WPF可能会对诸如ComboBox、ListBox等集合控件的当前选择项的绑定有所疑惑,控件提供了两个可绑定对象:SelectedItem\SelectedValue,同时还有DisplayMemberPath\SelectedValuePath。本节来讲述一下它们的设计意图和用法。1、SelectedItem与DisplayMemberPath在Winform中,我们经常用到Select
James.TCG
·
2024-09-04 21:47
WPF
wpf
比特币
详解
1.比特币的由来自2008年中本聪引入比特币以来,比特币已经在全球范围内掀起了广泛讨论。无论褒贬如保,它是目前世界上最成功的数字货币,针对它的投资已有数十亿美元。截至2020年10月,比特币的市值约为2121亿美元。注意:2013年12月5日,中国人民银行等五部委发布《关于防范比特币风险的通知》(以下简称《通知》),明确了比特币的性质,认为比特币不是由货币当局发行,不具有法偿性与强制性等货币属性,
Mindfulness code
·
2024-09-04 20:40
区块链开发
区块链
比特币
Camtasia Studio软件2024破解版注册机下载包含软件激活码
这款软件套装非常适合用于制作教学视频、软件教程、游戏解说等,让用户能够轻松地记录屏幕操作、添加配音、剪辑视频、制作过场
动画
等。
CoCo玛奇朵
·
2024-09-04 20:09
Camtasia视频录制软件
Camtasia
Studio免费版
Camtasia激活
microsoft
macos
百度云
百度
运维
JMeter 接口自动化测试:以搜索功能为例的实现思路
详解
在软件开发和测试领域,接口自动化测试是确保系统间交互顺畅、提高测试效率的重要手段。ApacheJMeter是一款广受欢迎的开源性能测试工具,它不仅能够进行负载测试,也支持接口测试。本文将以一个典型的搜索功能为例,详细解析如何使用JMeter实现接口自动化测试,从功能分析到抓取接口,再到配置与执行测试。1.功能需求分析首先,明确搜索功能的基本需求:用户输入关键词,系统根据关键词检索数据库或索引,并返
锦都不二
·
2024-09-04 19:38
jmeter
Java - SpringBoot 框架
详解
(一)
1.SpringBoot框架SpringBoot并不是一个全新的技术解决了新问题的框架!它更像是一个SpringMVC框架,但是,它极大程度的简化了相关的配置,它推荐使用“约定大于配置”的思想,框架本身已经完成了大量的基础配置,开发人员只需要知道“应该怎么做”就行,并不需要手动做相关的配置!2.创建SpringBoot项目SpringBoot项目的创建方式有多种,可以直接从开发工具中创建,也可以基
蜗牛不会飞_
·
2024-09-04 19:05
Java
java
spring
boot
maven
Day03-01:Ajax-Ax
ios
2-案例
Day03-01:Ajax-Ax
ios
2-案例基于Vue及Ax
ios
完成数据的动态加载展示1.数据准备的url:http://yapi.smart-xwork.cn/mock/169327/empist2
我以为心都空了
·
2024-09-04 18:01
JavaWeb
ajax
前端
javascript
【老生谈算法】matlab实现文字识别算法——文字识别算法
matlab的文字识别算法1、文档下载:本算法已经整理成文档如下,有需要的朋友可以点击进行下载说明文档(点击下载)本算法文档【老生谈算法】matlab实现文字识别算法.doc更多matlab算法原理及源码
详解
可点击下方文字直达
阿里matlab建模师
·
2024-09-04 18:30
matlab算法原理详解
matlab
算法
计算机视觉
k8s——pod
详解
+harbor镜像拉取(凭据)
k8s——pod
详解
+harbor镜像拉取(凭据)Pod基础概念在k8s集群中pod的使用方式Pod容器的分类pod中的3种容器底层基础容器pause初始化容器(initcontainers)1)概念2
xinheng233
·
2024-09-04 18:30
k8s
k8s
pod
34 设计模式——状态模式
详解
在软件开发过程中,应用程序中的部分对象可能会根据不同的情况做出不同的行为,我们把这种对象称为有状态的对象,而把影响对象行为的一个或多个动态变化的属性称为状态。当有状态的对象与外部事件产生互动时,其内部状态就会发生改变,从而使其行为也发生改变。如人都有高兴和伤心的时候,不同的情绪有不同的行为,当然外界也会影响其情绪变化。对这种有状态的对象编程,传统的解决方案是:将这些所有可能发生的情况全都考虑到,然
木子教程
·
2024-09-04 17:00
重写(Override)和重载(Overlord)
详解
重写(Override)和重载(Overlord)
详解
一.重写(Override)重写是子类对父类的允许访问的方法的实现过程进行编写,返回值和形参都不能改变;重写的好处在于子类可以根据需要,定义特定的自己的行为
healing97
·
2024-09-04 17:57
Java
C语言操作符
详解
一:(左移右移二进制,整数在内存中的存储)
算术操作符:算术操作符有:加法+减法-乘法*除法/取余%算术操作符该注意的点:1.除了%操作符之外,其他的操作符都可以作用于整数和浮点数。2.对于/操作符来说,两个数都是整数的话,结果只能是整数,如果其中一个是浮点数的话,那结果也是浮点数。3.%操作符的两个数必须是整数,返回的是整除之后的余数。移位操作符:>:右移操作符注意:移位操作符只能操作整数!整数在内存中二进制的补充:在详细了解操作符之前我
小_t_同学
·
2024-09-04 17:24
c语言复健学习
c语言
开发语言
rocketmq 同步复制,异步复制,同步刷盘,异步刷盘
详解
一、刷盘模式同步刷盘:在返回写成功状态时,消息已经被写入磁盘。具体流程是,消息写入内存的PAGECACHE后,立刻通知刷盘线程刷盘,然后等待刷盘完成,刷盘线程执行完成后唤醒等待的线程,返回消息写成功的状态。优点:机器宕机消息也会被保留,缺点:写入速度慢,吞吐量小。异步刷盘:在返回写成功状态时,消息只是被写入了内存的PAGECACHE,这样的好处是写操作的返回快,吞吐量大;当内存里的消息量积累到一定
husterlichf
·
2024-09-04 16:48
#
RocketMQ
java-rocketmq
rocketmq
java
ansible
详解
一、语法usage:ansible[-h][--version][-v][-b][--become-methodBECOME_METHOD][--become-userBECOME_USER][-K|--become-password-fileBECOME_PASSWORD_FILE][-iINVENTORY][--list-hosts][-lSUBSET][-PPOLL_INTERVAL][-B
husterlichf
·
2024-09-04 16:18
ansible
ansible
多图
详解
kafka生产者消息发送过程
:fire:《Kafka运维管控平台LogiKM》:fire::pencil2:更强大的管控能力:pencil2::tennis:更高效的问题定位能力:tennis::sunrise:更便捷的集群运维能力:sunrise::musical_score:更专业的资源治理:musical_score::sun_with_face:更友好的运维生态:sun_with_face:@[TOC]今天我们来通过
JAVAQXQ
·
2024-09-04 15:13
java
kafka
开发语言
kafka ---- producer与broker配置
详解
以及ack机制
详解
一、producer配置1、bootstrap.serverskafkabroker集群的ip列表,格式为:host1:port1,host2:port2,…2、client.id用于追踪消息的源头3、retries当发送失败时客户端会进行重试,重试的次数由retries指定,默认值是2147483647,即Integer.MAX_VALUE;在重试次数耗尽和delivery.timeout.ms
husterlichf
·
2024-09-04 15:41
#
kafka
kafka
java
分布式
基于Bert-base-chinese训练多分类文本模型(代码
详解
)
目录一、简介二、模型训练三、模型推理一、简介BERT(BidirectionalEncoderRepresentationsfromTransformers)是基于深度学习在自然语言处理(NLP)领域近几年出现的、影响深远的创新模型之一。在BERT之前,已经有许多预训练语言模型,如ELMO和GPT,它们展示了预训练模型在NLP任务中的强大性能。然而,这些模型通常基于单向的上下文信息,即只考虑文本中
一颗洋芋
·
2024-09-04 15:41
bert
分类
自然语言处理
网络模型与ARP
详解
自学网络协议学到什么程度才算掌握,思考很久并在网上阅读了一番后,悟出了:不同程序员,学得程度不一样。一个java程序员,掌握基本的网络模型即可,从访问一个google走过的路由,什么时候涉及什么协议。了解了大概的网络模型之后,你在编程中基本所需的已足够。再深入了解一些原理的东西,比如IP选址、ARP实现与ARP攻防。我学习的网络模型总结:从我访问一个google开始,在浏览器中访问http://w
zhj574182446
·
2024-09-04 15:11
网络协议
网络协议
网络
基于STM32F103ZET6的CANopen移植
详解
与实例解析
基于STM32F103ZET6的CANopen移植
详解
与实例解析一、引言CANopen是一种基于CAN(ControllerAreaNetwork)的高层通信协议,广泛应用于工业自动化、医疗设备、交通运输等领域
m0_57781768
·
2024-09-04 14:35
stm32
网络
嵌入式硬件
IOS
MKMapCamera三维地图
1overridefuncviewDidLoad(){2super.viewDidLoad()3//Doanyadditionalsetupafterloadingtheview,typicallyfromanib.45letmapView=MKMapView(frame:self.view.bounds)6mapView.mapType=MKMapType.standard78letcenter
SkTj
·
2024-09-04 14:46
利用微博推广和赚钱的方法
详解
微博发展到现在已经很多年了,所以是一个非常成熟的自媒体平台,大家如果要从事自媒体运营的话,可以考虑微博这个平台,那么微博营销号可以赚多少钱呢?大家好,我是高省APP联合创始人万方导师,高省APP是2021年推出的电商导购平台,0投资,0风险、高省APP佣金更高,模式更好,终端用户不流失。【高省】是一个可省钱佣金高,能赚钱有收益的平台,百度有几百万篇报道,也期待你的加入。高省邀请码005500,注册
日常购物技巧呀
·
2024-09-04 14:07
stm32—I2C底层代码
详解
—江科大
声明:本文代码来自bilibili江科大,侵权可私信我删文创作本文全凭个人与大家学习/*引脚配置层*//***函数:I2C写SCL引脚电平*参数:BitValue协议层传入的当前需要写入SCL的电平,范围0~1*返回值:无*注意事项:此函数需要用户实现内容,当BitValue为0时,需要置SCL为低电平,当BitValue为1时,需要置SCL为高电平*/voidMyI2C_W_SCL(uint8_
打地基的小白
·
2024-09-04 13:30
Stm32代码模块
stm32
单片机
嵌入式硬件
CTF---密码学(1)--古典密码-理论与实战
详解
密码学的三个发展阶段:密码学的首要目的是隐藏信息的涵义,而并不是隐藏信息的存在,这是密码学与隐写术的一个重要区别。密码学的发展大概经历了三个阶段:古典密码阶段(1949年以前):早期的数据加密技术比较简单,复杂程度不高,安全性较低,大部分都是一些具有艺术特征的字谜。随着工业革命的到来和二次世界大战的爆发,数据加密技术有了突破性的发展。出现了一些比较复杂的加密算法以及机械的加密设备。近代密码阶段(1
洛一方
·
2024-09-04 13:30
#
渗透测试从入门到入土
网络安全---白帽从小白到大神
密码学
网络安全
web安全
网络攻击模型
安全
系统安全
计算机网络
【Spring Boot】Web开发篇:Spring MVC实战、RESTful API设计与Spring Boot Actuator应用监控
详解
目录SpringMVC简介RESTfulAPI设计与实现SpringBootActuator监控应用SpringMVC简介SpringMVC(Model-View-Controller)是Spring框架的一个模块,提供了一个清晰分离的、高度灵活的模型来构建现代Web应用。SpringMVC遵循MVC设计模式,将应用程序的数据处理(Model)、用户界面(View)和用户交互(Controller
何遇mirror
·
2024-09-04 13:58
后端
spring
boot
spring
后端
Spring Boot 整合 RestTemplate:
详解
与实战
SpringBoot整合RestTemplate:
详解
与实战指南一、引言二、依赖添加Maven示例:Gradle示例:三、创建RestTemplate实例四、使用RestTemplate发起请求五、处理响应六
DebugDiver代码深处潜水员
·
2024-09-04 13:28
spring框架相关
spring
boot
后端
java
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他