思路和时间复杂度思路:利用栈完成出栈操作时间复杂度:代码classSolution{public:boolbackspaceCompare(strings,stringt){stackss;stacktt;for(inti=0;i
Leetcode32 最长有效括号深度解析
八股文领域大手子
数据库mysqljavasqlredis
问题描述找出字符串s中最长的有效括号子串的长度。核心思路动态规划:定义dp[i]为以字符s[i]结尾的最长有效括号子串长度。分情况讨论:根据当前字符是否为)以及前面的字符情况,推导状态转移方程。状态转移方程详解Case1:当前字符)与前一个字符(直接匹配场景:形如...()的结构。转移方程:if(s.charAt(i-1)=='('){dp[i]=dp[i-2]+2;//前i-2个字符的有效长度+
一份C#的笔试题及答案
网际游侠
c#面试笔试
C#笔试题一、基础知识OOP的基本概念面向对象编程的核心思想包括四个主要特性:继承、多态、封装和信息隐藏。请简述这四个特性的具体内容。值类型与引用类型的区别值类型(如int,string)在内存中直接存储数据,而引用类型(如object,ref)通过引用间接存储,指出值的位置。请举例说明两者的不同。静态与非静态关键字的作用静态和非静态关键字用于区分依赖于实例还是不依赖于实例的成员。请分别解释它们的
C# 线程池 ThreadPool 的深入解析与应用
墨夶
C#学习资料1c#算法
在多线程编程中,线程池(ThreadPool)是一种高效利用系统资源的方式。通过合理使用线程池,可以显著提高应用程序的性能和响应能力。本文将深入解析C#中的ThreadPool类,并展示如何在实际应用中有效地使用它。你是否曾经面临过创建过多线程导致系统资源耗尽的问题?C#提供的ThreadPool类可以帮助你优雅地管理线程,避免这些问题。本文将带你一步步深入了解ThreadPool并展示其在实际项
C#—线程池详解
_Csharp
C#基础-高阶-实战知识点c#开发语言
C#—线程池详解核心机制说明自动回收与重用线程池中的线程在完成任务后不会销毁,而是回到池中等待新任务。无需手动“重新启用”,线程池会自动调度可用线程处理新任务。线程回收策略空闲线程超过一定时间(默认约20秒)后会被自动回收突发大量任务时,线程池会按需创建新线程(受SetMinThreads/SetMaxThreads限制)线程池概述线程池(ThreadPool)是.NET提供的一种线程管理机制,通
easyexcel操作文件读取中某列为null
温馨提示
java
使用EasyExcel.read()方法读取出来某列为空的解决办法最近使用easyexcel操作文件,发现第一列取出来都是null值,排查了半天终于发现了问题,就是Data中属性值严格要求驼峰命名规则,否则识别不出来。@DatapublicclassExcelDateSubject{@ExcelProperty(value="一级标题",index=0)privateStringOneSubjec
JAVA中运算符要注意的地方
优雅的落幕
Javajava开发语言
本文章主要突出其与C语言的区别1.增量运算符+=-=*=%=1.a+=1.0a+=1.0;a=(int)(a+1.0);这两个等价而不是单纯的等价于a=a+1.02.a=a++publicstaticvoidmain(String[]args){inta=10;a=a++;System.out.println(a);}在上述代码中,a的结果是什么呢?是不是a=11?但其实不是的a=10其实这样赋值
JAVA随机生成六位验证码
Ning.L
javapython开发语言
使用java语言随机生成六位数的验证码在importjava.util.Random;publicclassRandomCodeGenerator{publicstaticvoidmain(String[]args){//生成六位数验证码StringverificationCode=generateVerificationCode(6);System.out.println("生成的验证码是:"+
73_Go基础_1_43 方法继承
芦苇King
05_Go_01golang开发语言后端
packagemainimport"fmt"//1.定义一个"父类"typePersonstruct{namestringageint}//2.定义一个"子类"typeStudentstruct{Person//结构体嵌套,模拟继承性schoolstring}//3.方法func(pPerson)eat(){fmt.Println("父类的方法,吃窝窝头。。")}func(sStudent)stu
7、标准库的string的常见使用
周Echo周
STLc++开发语言算法数据结构推荐算法leetcode蓝桥杯
一、了解string其实不完全算STL库中的。在C++中,string是标准库提供的用于处理动态字符序列的类(位于头文件),相比C风格的字符数组(char[]或char*),string提供更安全、更便捷的操作。使用的头文件#include二、初始化stringname;//创建一个空的stringstringname("数据");//创建一个字符串值为“数据”的stringstringname=
一文了解 Go 接口
challenge后端go
接口在Go语言中,接口是一种抽象的类型,是一组方法的集合。接口存在的目的是定义规范,而规范的细节由其他对象去实现。我们来看一个例子:import"fmt"typePersonstruct{Namestring}funcmain(){person:=Person{Name:"cmy"}fmt.Println(person)//{cmy}}上述代码定义了结构体Person,main函数创建了此结构体的
一文了解 Go 标准库 strconv
challengego后端
前言上篇文章介绍了strings标准库里的一些常用的函数和方法,本文也是以string类型为中心,通过strconv标准库,介绍其与其他基本数据类型相互转换的函数。strconvstrconv包提供了string类型与其他基本数据类型之间转换的函数,本文不会介绍其所有函数,如果想了解更多的小伙伴可以到Go包文档查看。string与int之间的转换Itoa:int类型转string类型Itoa(ii
【第一天】并发编程的10个坑 (万字血泪经验教训)
程序猿小假
Java开发日记java
1、SimpleDateFormat线程不安全在Java8之前,对时间的格式化处理,一般都是用的SimpleDateFormat类实现的。例如:@ServicepublicclassSimpleDateFormatService{publicDatetime(Stringtime)throwsParseException{SimpleDateFormatdateFormat=newSimpleDa
七个设计模式原则详解
醉花妍
#DesignPattern设计原则模式原则
目录一、单一职责原则单一职责原则(SingleResponsibilityPrinciple,SRP):二、开闭原则开闭原则(Open-ClosedPrinciple,OCP):三、里氏代换原则里氏代换原则(LiskovSubstitutionPrinciple,LSP):在使用里氏代换原则时需要注意如下几个问题:四、依赖倒转原则依赖倒转原则(DependencyInversionPrincipl
88.Django中间件的说明与使用方法
想成为数据分析师的开发工程师
Python_Django框架django中间件pythonweb后端
1.概述AOP(AspectOrientedProgramming),面向切面编程,是对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。可以实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。面向切面编程,就是将交叉业务逻辑封装成切面,利用AOP的功能将切面织入到主业务逻辑中。所谓交叉业务逻辑是指,通用的,与主业务逻辑无关的代码
Go语言中间件(Middleware)
欣欣子的摸爬滚打
实习记录go中间件
首先,什么是Handler?简单来说,goWeb通过http.HandleFunc()来注册默认路由,将传入URL匹配到相应的Handler。它的函数原型为:http.HandleFunc(patternstring,handlerfunc(ResponseWriter,*Request))其中,Handler是我们处理请求和生成返回信息逻辑处理函数。什么是中间件呢?中间件(MiddleWare)
nodejs+mysql分页查询
m0_67987829
mysql前端node.js
router:(参数page,size)goodsRouter.get("/getList",getGoodsList)controllerasyncgetGoodsList(ctx,next){const{page,size}=ctx.query;//获取查询参数//将page和size转换为数字类型constparsedPage=parseInt(page);constparsedSize=p
InfluxDB写入测试
PascalMing
编程influxdbjava读写测试
早几年测试时序库时,采集数据到kafka,然后用不同数据进行存储验证。Influxdb是花时间比较多的,它的数据建模方法、读写方法都需要使用特殊的API。时间久了自己也经常忘记,把当时的测试关键代码记录下来,也方便日后查找。代码基于java编写。1、接口数据定义,clientid+tag组合必须唯一publicclassKafkaInfo{//客户端idpublicStringclientid;/
C/C++中左值引用,右值引用,万能引用的关系和区别
东北豆子哥
C++c语言c++
在C++中,左值引用、右值引用和万能引用是三种不同的引用类型,它们的主要区别在于绑定的对象类型和生命周期管理。以下是它们的详细解释和示例代码。1.左值引用(LvalueReference)左值引用绑定到一个左值(即有名字的、可以取地址的对象)。左值引用通常用于传递参数或延长对象的生命周期。#includevoidprint(int&x){std::coutvoidprint(int&&x){std
C/C++实现注册模式(Registry Pattern)
东北豆子哥
C++c语言c++开发语言
注册模式(RegistryPattern)是一种设计模式,通常用于管理对象的创建和访问。它允许你将对象的创建逻辑与使用逻辑分离,并且可以在运行时动态地注册和获取对象。下面是一个简单的C++实现注册模式的示例:#include#include#include#include#include//基类classBase{public:virtual~Base()=default;virtualvoidp
6-数组-
重生之我是冯诺依曼
C++c++
一-一维数组1-数组定义数组的定义方式和变量类似#includeusingnamespacestd;intmain(){inta[100],b[20];floatf[3];doubled[7];charc[9];strings[56];return0;}2-数组初始化#includeusingnamespacestd;intmain(){//自己输入数组长度inta[3]={0,1,2};//系统
Kotlin知识体系(二) : Kotlin的七个关键特性
氦客
知识体系-Kotlin基础kotlinandroid开发语言特性密封类dataclass安卓
前言在Android开发中,Kotlin以其简洁的语法和强大的特性显著提升了开发效率。本文将解析Kotlin中7个关键特性,通过代码示例展示它们在实际开发中的应用。一、构造函数:主次分明主构造函数classUserconstructor(_name:String){//传统写法valname=_name}classStudent(valid:Int,varname:String)//简化版主构造函
纯代码非插件实现wordpress右侧悬浮在线客服咨询台
wodrpress资源分享
wordpresswordpress
为了创建一个悬浮在右侧的在线客服咨询台,您可以使用HTML和CSS。以下是一个简单的示例,包含了QQ咨询和微信咨询的链接。HTML代码:在线客服咨询台QQ咨询微信咨询CSS代码:#right-sidebar{width:200px;height:100vh;position:fixed;right:0;top:0;background-color:#f5f5f5;padding:20px;}#on
wordpress导入mysql数据库文件的方法及注意事项
wodrpress资源分享
wordpress数据库mysqlwordpress
WordPress是一个流行的开源内容管理系统,通常用于构建网站和博客。它使用MySQL数据库来存储和管理网站数据。在某些情况下,您可能需要将现有的MySQL数据库导入到新的WordPress安装中。本文将介绍如何导入MySQL数据库文件到WordPress以及需要注意的事项。一、备份现有数据库在进行任何数据库导入操作之前,强烈建议您先备份现有的数据库。这样可以确保在导入过程中出现问题时,您不会丢
Python学习日记-第二十九天-tcp(客户端)
差点长成吴彦祖
pythonpandastcp/ip网络
系列文章目录tcp介绍tcp特点tcp客户端一、tcp介绍Tcp协议,传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC793定义TCP通信需要经过创建连接、传输数据、终止连接三个步骤TCP通信模型中,在通信开始之前,一定要先建立相关的链接,才能发送数据,类似于生活中的“打电话”(注:之前学习的udp,在通信前,不需要建立相关的链接,只需要发送数据即可,类似于“写
2018 Kotlin中的model
Shigq-droid
Kotlinkotlinmodel
数据类我们经常创建主要用于保存数据的类。在这样的类中,一些标准功能和效用函数通常可以从数据中机械地导出。在Kotlin中,这称为数据类,标记为data:dataclassUser(valname:String,valage:Int)编译器自动从主构造函数中声明的所有属性派生以下成员:equals()/hashCode()pair;toString()形式”User(name=John,age=42
Python基础语法(一)
算法工程师y
python开发语言
一、Python的安装与环境配置在开始编程之前,你需要确保计算机上安装了Python。以下是简单步骤:下载Python:访问Python官网,选择适合你操作系统的版本(推荐Python3.10+)。安装Python:运行安装程序,勾选“AddPythontoPATH”(确保在命令行中可以直接使用Python)。验证安装:打开终端(Windows用户使用CMD/PowerShell,Mac/Linu
Moonlight Stream 和 SteamLink 远程串流失败问题解决
橙橙橙橙辰
运维网络batch
MoonlightStream和SteamLink远程串流失败问题解决问题描述在使用MoonlightStream或者SteamLink进行远程串流时,如果远程PC重启,或者被其他设备使用远程桌面(mstsc,rdp)登录过,则会出现串流失败的问题:SteamLink:锁屏界面卡弹窗MoonlightStream:远程PC显示感叹号如下图所示:其实问题原因是重启或者远程登录都会导致远程PC被锁定,
Mybatis传递多个不同类型的参数
我的身前一尺是我的世界
Mybatis传递多个参数
一、同时传递List和String实现类@OverridepublicListfun(StringshopId,Listlist){Mapmap=newHashMap();map.put("shopId",shopId);map.put("list",list);ListlistCommodity=appCommodityMapper.fun(map);returnlistCommodity;}m
VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite
iwindyforest
vmwaremac os10.10workstationplayer
最近尝试了下VMware下安装MacOS 系统,
安装过程中发现网上可供参考的文章都是VMware Workstation 10以下, MacOS X 10.9以下的文章,
只能提供大概的思路, 但是实际安装起来由于版本问题, 走了不少弯路, 所以我尝试写以下总结, 希望能给有兴趣安装OSX的人提供一点帮助。
写在前面的话:
其实安装好后发现, 由于我的th
关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?
deathwknight
JavaScriptjava框架
本人从学习Java开发到现在已有10年整,从一个要自学 java买成javascript的小菜鸟,成长为只会java和javascript语言的老菜鸟(个人邮箱:
[email protected])
一路走来,跌跌撞撞。用自己的三年多业余时间,瞎搞一个小东西(基于模型驱动的B/S在线开发平台,非MVC框架、非代码生成)。希望与大家一起分享,同时有许些疑虑,希望有人可以交流下
平台
如何把maven项目转成web项目
Kai_Ge
mavenMyEclipse
创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compl
主管???
Array_06
工作
转载:http://www.blogjava.net/fastzch/archive/2010/11/25/339054.html
很久以前跟同事参加的培训,同事整理得很详细,必须得转!
前段时间,公司有组织中高阶主管及其培养干部进行了为期三天的管理训练培训。三天的课程下来,虽然内容较多,因对老师三天来的课程内容深有感触,故借着整理学习心得的机会,将三天来的培训课程做了一个
python内置函数大全
2002wmj
python
最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Fu
JSP页面通过JQUERY合并行
357029540
JavaScriptjquery
在写程序的过程中我们难免会遇到在页面上合并单元行的情况,如图所示
如果对于会的同学可能很简单,但是对没有思路的同学来说还是比较麻烦的,提供一下用JQUERY实现的参考代码
function mergeCell(){
var trs = $("#table tr");
&nb
Java基础
冰天百华
java基础
学习函数式编程
package base;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
// Integer a = 4;
// Double aa = (double)a / 100000;
// Decimal
unix时间戳相互转换
adminjun
转换unix时间戳
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)? Java time JavaScript Math.round(new Date().getTime()/1000)
getTime()返回数值的单位是毫秒 Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 62135
作为一个合格程序员该做的事
aijuans
程序员
作为一个合格程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多
2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作
3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重
由html5视频播放引发的总结
ayaoxinchao
html5视频video
前言
项目中存在视频播放的功能,前期设计是以flash播放器播放视频的。但是现在由于需要兼容苹果的设备,必须采用html5的方式来播放视频。我就出于兴趣对html5播放视频做了简单的了解,不了解不知道,水真是很深。本文所记录的知识一些浅尝辄止的知识,说起来很惭愧。
视频结构
本该直接介绍html5的<video>的,但鉴于本人对视频
解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat
bewithme
httpclient
如果你构建了一个https协议的站点,而此站点的安全证书并不是合法的第三方证书颁发机构所签发,那么你用httpclient去访问此站点会报如下错误
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path bu
Jedis连接池的入门级使用
bijian1013
redisredis数据库jedis
Jedis连接池操作步骤如下:
a.获取Jedis实例需要从JedisPool中获取;
b.用完Jedis实例需要返还给JedisPool;
c.如果Jedis在使用过程中出错,则也需要还给JedisPool;
packag
变与不变
bingyingao
不变变亲情永恒
变与不变
周末骑车转到了五年前租住的小区,曾经最爱吃的西北面馆、江西水饺、手工拉面早已不在,
各种店铺都换了好几茬,这些是变的。
三年前还很流行的一款手机在今天看起来已经落后的不像样子。
三年前还运行的好好的一家公司,今天也已经不复存在。
一座座高楼拔地而起,
【Scala十】Scala核心四:集合框架之List
bit1129
scala
Spark的RDD作为一个分布式不可变的数据集合,它提供的转换操作,很多是借鉴于Scala的集合框架提供的一些函数,因此,有必要对Scala的集合进行详细的了解
1. 泛型集合都是协变的,对于List而言,如果B是A的子类,那么List[B]也是List[A]的子类,即可以把List[B]的实例赋值给List[A]变量
2. 给变量赋值(注意val关键字,a,b
Nested Functions in C
bookjovi
cclosure
Nested Functions 又称closure,属于functional language中的概念,一直以为C中是不支持closure的,现在看来我错了,不过C标准中是不支持的,而GCC支持。
既然GCC支持了closure,那么 lexical scoping自然也支持了,同时在C中label也是可以在nested functions中自由跳转的
Java-Collections Framework学习与总结-WeakHashMap
BrokenDreams
Collections
总结这个类之前,首先看一下Java引用的相关知识。Java的引用分为四种:强引用、软引用、弱引用和虚引用。
强引用:就是常见的代码中的引用,如Object o = new Object();存在强引用的对象不会被垃圾收集
读《研磨设计模式》-代码笔记-解释器模式-Interpret
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象
*
* 代码示例实现XML里面1.读取单个元素的值 2.读取单个属性的值
* 多
After Effects操作&快捷键
cherishLC
After Effects
1、快捷键官方文档
中文版:https://helpx.adobe.com/cn/after-effects/using/keyboard-shortcuts-reference.html
英文版:https://helpx.adobe.com/after-effects/using/keyboard-shortcuts-reference.html
2、常用快捷键
Maven 常用命令
crabdave
maven
Maven 常用命令
mvn archetype:generate
mvn install
mvn clean
mvn clean complie
mvn clean test
mvn clean install
mvn clean package
mvn test
mvn package
mvn site
mvn dependency:res
shell bad substitution
daizj
shell脚本
#!/bin/sh
/data/script/common/run_cmd.exp 192.168.13.168 "impala-shell -islave4 -q 'insert OVERWRITE table imeis.${tableName} select ${selectFields}, ds, fnv_hash(concat(cast(ds as string), im
Java SE 第二讲(原生数据类型 Primitive Data Type)
dcj3sjt126com
java
Java SE 第二讲:
1. Windows: notepad, editplus, ultraedit, gvim
Linux: vi, vim, gedit
2. Java 中的数据类型分为两大类:
1)原生数据类型 (Primitive Data Type)
2)引用类型(对象类型) (R
CGridView中实现批量删除
dcj3sjt126com
PHPyii
1,CGridView中的columns添加
array(
'selectableRows' => 2,
'footer' => '<button type="button" onclick="GetCheckbox();" style=&
Java中泛型的各种使用
dyy_gusi
java泛型
Java中的泛型的使用:1.普通的泛型使用
在使用类的时候后面的<>中的类型就是我们确定的类型。
public class MyClass1<T> {//此处定义的泛型是T
private T var;
public T getVar() {
return var;
}
public void setVa
Web开发技术十年发展历程
gcq511120594
Web浏览器数据挖掘
回顾web开发技术这十年发展历程:
Ajax
03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。
彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a
openSession()与getCurrentSession()区别:
hetongfei
javaDAOHibernate
来自 http://blog.csdn.net/dy511/article/details/6166134
1.getCurrentSession创建的session会和绑定到当前线程,而openSession不会。
2. getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭。
这里getCurrentSession本地事务(本地
第一章 安装Nginx+Lua开发环境
jinnianshilongnian
nginxluaopenresty
首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒
HSQLDB In-Process方式访问内存数据库
liyonghui160com
HSQLDB一大特色就是能够在内存中建立数据库,当然它也能将这些内存数据库保存到文件中以便实现真正的持久化。
先睹为快!
下面是一个In-Process方式访问内存数据库的代码示例:
下面代码需要引入hsqldb.jar包 (hsqldb-2.2.8)
import java.s
Java线程的5个使用技巧
pda158
java数据结构
Java线程有哪些不太为人所知的技巧与用法? 萝卜白菜各有所爱。像我就喜欢Java。学无止境,这也是我喜欢它的一个原因。日常
工作中你所用到的工具,通常都有些你从来没有了解过的东西,比方说某个方法或者是一些有趣的用法。比如说线程。没错,就是线程。或者确切说是Thread这个类。当我们在构建高可扩展性系统的时候,通常会面临各种各样的并发编程的问题,不过我们现在所要讲的可能会略有不同。
开发资源大整合:编程语言篇——JavaScript(1)
shoothao
JavaScript
概述:本系列的资源整合来自于github中各个领域的大牛,来收藏你感兴趣的东西吧。
程序包管理器
管理javascript库并提供对这些库的快速使用与打包的服务。
Bower - 用于web的程序包管理。
component - 用于客户端的程序包管理,构建更好的web应用程序。
spm - 全新的静态的文件包管
避免使用终结函数
vahoa.ma
javajvmC++
终结函数(finalizer)通常是不可预测的,常常也是很危险的,一般情况下不是必要的。使用终结函数会导致不稳定的行为、更差的性能,以及带来移植性问题。不要把终结函数当做C++中的析构函数(destructors)的对应物。
我自己总结了一下这一条的综合性结论是这样的:
1)在涉及使用资源,使用完毕后要释放资源的情形下,首先要用一个显示的方