- Android Product Flavors 深度解析与最佳实践:构建多版本应用的全方位指南
tangweiguo03051987
androidKotlin语法androidkotlin
1.高效配置模板1.1现代化多维度配置(KotlinDSL)android{flavorDimensions+=listOf("version","market","environment")productFlavors{register("free"){dimension="version"applicationIdSuffix=".free"versionNameSuffix="-FREE"r
- node版本安装与切换
墨空文377
node.js
gnvm官网地址:http://ksria.com/gnvm/doc/zh/common/download.html1.使用gnvm进行node下载切换a.gnvm下载地址:https://pan.baidu.com/s/1gdmVgen#list/path=%2F%E6%88%91%E7%9A%84%E5%85%B1%E4%BA%AB%2Fgnvm%2F64-bit%2F0.2.0将下载的gnv
- 如何在VSCode 中采用CMake编译C++程序
独坐寒江边
C++vscodec++ide
如何在VSCode中采用CMake编译C++程序文章目录如何在VSCode中采用CMake编译C++程序配置环境单个CPP文件,不依赖外部库,只使用C++的库两个CPP文件,不依赖外部库,只使用C++的库三个CPP文件,不依赖外部库,只使用C++的库使用CMakeLists进行编译编写CMakeLists.txt生成外部库,并进行调用MyDLL中的CMakeLists.txt的写法MyAPP中的C
- 【C++ STL】list容器、forward_list容器
YxVoyager
c++liststl
文章目录概述构造函数赋值方法函数底层实现细节概述std::list是STL提供的双向链表容器,std::forward_list是STL提供的单向链表容器,。链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表中每一个元素称为结点,链表由一系列结点组成,结点可以在运行时动态生成。每个结点包括两个部分:存储数据元素的数据域存储相邻结点地址的指针域
- JavaScript原生实现事件监听及手动触发
神影天初
JavaScriptjavascriptevent
事件监听标签中的onxxx,比如按钮js中的onxxx,比如document.body.onclick=function(){/*bodyclick*/}js中的addEventListener,比如document.body.addEventListener("click",()=>{/*bodyclick*/})这三种中最好的就是最后一种了,不仅便于管理,而且可以给一个元素的任意一个事件添加多
- Flowable/Activiti系列之五:流程引擎远程调用时透传任意复杂的业务对象
无级程序员
flowableactiviti流程引擎微服务
系列文章:Flowable(Activiti)系列之一:中会签(多实例)使用方法以及ExecutionListener和TaskListener的区别Flowable(Activiti)系列之二:不用自己写代码,使用Flowable-ui的Rest接口Flowable(Activiti)系列之三:docker运行flowable-ui,存储到mysql/postgres数据库,支持arm64架构F
- 面经分享,中科创达(安卓开发,二面挂)
慕容魏
java开发语言
首先是评价,公司属于是新成立的外资合资企业,主要是对德和对日。然后一面线上面试很简单,二面线下技术主管和HR一起面试,强度较大比较细腻,但是面试官很温和很耐心。一面(因为是安卓开发,不对口,就只问了Java)1.Java高并发多线程理解,线程池参数2.Java集合3.list具体,以及和map区别4.hashmap的底层原理5.数据结构,集合队列和树6.项目里面的和安卓开发有关吗,讲解一下7.排序
- Flutter开发之——文件及文件夹操作,阿里面试官必问
网络安全天地
httpudphttpswebsocket网络安全网络协议tcp/ip
Flutter文件操作指南目录操作遍历目录awaitfor(FileSystemEntityfileSystemEntityinfileList){print('$fileSystemEntity');}说明:Directory(path).list()中有一个可选参数recursive,默认值为false,表示只遍历当前目录设置为true时表示遍历当前目录及子目录判断文件类型awaitfor(F
- element的el-tree树的全部展开,全选,实现父子联动
你瞅啥灬
前端jsvue3elementuivue.js前端
笔记!笔记!笔记!//多选的按钮data(){return{jurisdictionType:[],dataList:[{id:1,label:'一级2',children:[{id:3,label:'二级2-1',children:[{id:4,label:'三级3-1-1'},{id:5,label:'三级3-1-2',disabled:true}]},{id:2,label:'二级2-2',
- C++11·部分重要语法III
2401_86702190
c++开发语言
目录emplaceemplace和push区别例:list的模拟实现部分代码默认移动构造和移动赋值默认函数的控制小知识emplaceC++11以后STL容器新增了emplace系列接口,均为模版可变参数,功能是插入,但总体而言比push和insert更高效,而且有更新的玩法,假设一个容器container,emplace可以支持直接插入构造T对象的参数,可以直接在容器空间构造T对象。emplace
- Eigen库小记
MobiCetus
机器学习人工智能
有时候脑子会突然卡住,忘记eigen库里的有些细节。所以还是决定来写个笔记把常用的用法总结一下,方便查阅。1、Installationg++-I/path/to/eigen/program.cpp-oprogram在CmakeLists中添加find_package(Eigen3REQUIRED)include_directories(&{EIGEN#_INCLUDE_DIR})2、Eigen库的
- 自定义类型:结构体(1)
zzzh1216
c语言
1.结构体回顾结构是一些值的集合,这些值被称为成员变量。结构的每个成员可以是不同类型的变量。1.1结构的声明structtag{member-list;}variable-list;例如描述一个学生:structStu{charname[20];intage;charsex[5];};1.2结构体变量的创建和初始化#includestructStu{charname[20];intage;char
- cmake之旅(1)
m晴朗
cmakecmakeqtc++makefile
cmake之旅(1)1构建的过程2手动构建2.1环境2.2开始编译3使用Makefile简化构建3.1环境3.2编写Makefile4使用cmake构建4.1环境4.2编写CMakeLists.txt1构建的过程我们先写一个简单的的程序:#includeintmain(){std::cout#defineNUM12intmain(){//注释std::cout#include"add.h"#inc
- 基于MFC按钮逻辑
没学上了
mfcc++
voidCSUCCES1Dlg::SetDlgItemState()//IDC_BTN_INIT初始化按钮{GigeStatestate=GigeState::ARV_NONE;//GigeState是一个枚举类型,stat状态为ARV_NONEintidx=((CListBox*)GetDlgItem(IDC_LIST_GIGE))->GetCurSel();//GetDlgItem是MFC框架
- 力扣题目之合并两个有序链表
虚像难
链表算法leetcode面试
力扣题目之合并两个有序链表这篇文章是我第一次写博客,主要作用是做个记录。避免自己做了就忘。如果大家有什么更好的算法希望也能在评论区告诉我。题目:给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。示例1:输入:lists=[[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释:链表数组如下:[1->4->5,1->3
- 自建ipa下载服务器的方法(最简单,使用在线工具)
上架ipa
H5开发移动开发APPipa测试ipa下载服务ipa安装搭建ipa服务
自建ipa下载服务非常复杂,首先要拥有域名,其实要用https,然后还要写plist那些,plist的语法还非常复杂,对于普通的ios开发者来说,自建下载服务非常麻烦,也没有必要。因此,我们测试ipa文件的时候,通常使用在线工具,上传ipa就可以帮我们生成安装二维码,扫码即可安装。废话不多说了,下面教下大家怎么在线生成二维码:打开香蕉云编平台:https://www.yunedit.com/nei
- 可迭代(Iterable)对象与对应的迭代器(Iterator)对象
被放养的研究生
Python算法比赛python开发语言
常见可迭代对象有string,list,tuple,set,dictionary,可迭代(Iterable)对象和迭代器(Iterator)对象不同,比如,打印字符串对象,输出的是字符串,打印字符串迭代器对象,输出的是字符串迭代器的地址。但是作为输入,可迭代对象与对应迭代器对象是等价的。例如,字符串对象str与字符串迭代器对象it作为list()的输入,输出都是[‘1’,‘2’,‘3’],代码如下
- SOEM中的ec_salve从机结构体释义
小鱼叉
驱动开发
SOEM中的ec_salve从机结构体释义代码/**forlistofethercatslavesdetected*/typedefstructec_slave{/**stateofslave*/uint16state;/**ALstatuscode*/uint16ALstatuscode;/**Configuredaddress*/uint16configadr;/**Aliasaddress*
- 安装centos7开发者工具
小白的瞄
Linuxlinux
安装centos7开发者工具1、查看有那些组安装包可用。yumgrouplist|more2.安装yumgroupinstall"DevelopmentTools"安装MySql0.检查环境rpm-qa|greplibaiorpm-qa|grepnet-tools0.1查询自带MySQL#rpm-qa|grepmariadbmariadb-libs-5.5.41-2.el7_0.x86_640.2
- Centos7 安装vm tools 工具
智商堪忧网工
linux运维centos
为了方便centos7系统的学习,同学们在虚拟机中可以安装vmtools工具来进行虚拟机与实物机器进行软件的交互。这里运用到的知识点比较多,步骤也比较详细。VMware官方文档:在Linux虚拟机中手动安装VMwareTools一、检查并且卸载在系统中安装的vmtools卸载预装的open-vm-tools包,检测是否预装了open-vm-toolsyumlistinstalled|grepope
- macOS (M1 Pro) 上 Docker Desktop 安装失败问题及其解决方案
coding随想
macosdocker容器
macOS(M1Pro)上DockerDesktop安装失败问题及其解决方案在尝试于搭载M1Pro芯片的macOS系统上安装DockerDesktop时,您可能会遇到如下错误:installingvmnetd:retrievingvmnetdversionfrom/Library/LaunchDaemons/com.docker.vmnetd.plist:readingplist/Library/
- Optional的stream方法,flatMap, filter应用
茶本无香
javaOptionalStreamfilterflatMap
Java8引入的Optional和Stream彻底改变了我们处理空值和集合操作的方式。本文将深入探讨如何将二者结合使用,通过四个核心场景提升代码的健壮性和简洁性。一、Optional构成的Stream:空值自动过滤当处理Optional集合时,我们常需要过滤掉空值并提取有效元素:List>options=Arrays.asList(Optional.of("Java"),Optional.empt
- Numpy常见bug
被放养的研究生
Bugnumpybug
错误1pid_list=np.load(pid_fname)ValueError:Cannotloadfilecontainingpickleddatawhenallow_pickle=False解决方法pid_list=np.load(pid_fname,allow_pickle=True)#添加allow_pickle=True错误2_pickle.UnpicklingError:Failed
- ROS2 编译显示缺少依赖的解决办法
momo:_
赵虚左老师ROS2学习笔记ubuntu
eg:CMakeErroratCMakeLists.txt:12(find_package):Bynotproviding"Findserial.cmake"inCMAKE_MODULE_PATHthisprojecthasaskedCMaketofindapackageconfigurationfileprovidedby"serial",butCMakedidnotfindone.Couldn
- Python 数据结构操作指南
程序员
Python数据结构操作指南在Python中,列表、字典和集合是三种常用的数据结构。它们各自有不同的特点和使用场景。本文将介绍这些数据结构的常见操作,并按使用频率进行分类。列表操作列表是Python中最常用的数据结构之一,支持动态大小和多种数据类型。常用操作#创建列表name_list=['tom','Jack',"desoerado"]#遍历列表fornameinname_list:print(
- 3.2 列表的常见函数
讨喜Dobi
windowsjavapython
1.列表的常用函数-如何查看一个不认识的内容-help()-查看官方帮助文档-dir()-查看内部函数-随机数语句importrandomranom.randint(0,101) 随机生成0-100内的数字'''list1=[1,2,3,4,5]list2=list([1,2,3,4,5,])list2=list("wangzhaowei") #['w','a','n','g','z','h
- 集合与ArrayList+哈希表
一个程序员(●—●)
开发语言c#
数据结构描述数据之间的关系。行为:添加数据,删除数据,插入数据,查找数据,修改数据。添加数据:向这个结构的末尾添加一个数据。删除数据:向这个结构中删除你指定的数据。插入数据:向这个结构中某个位置插入你指定的数据。查找数据:可以查找并访问到该数据。修改数据:可以对该结构指定的数据进行重新赋值。线性,链式,树状,图形,散列等链式:是非连续的内存空间,每个数据分成三个部分,头,数据,尾,每个数据的尾部连
- 【1】数据结构的顺序表章
_x_w
#数据结构理论原理数据结构python开发语言
目录顺序表的定义顺序表的初始化顺序表的查找按序号查找按内容查找顺序表的插入与删除插入删除顺序表的合并顺序表的调试与总代码顺序表的定义用顺序存储结构实现的线性表成为顺序表物理存储地址为相邻顺序的存储结构顺序表的初始化顺序表的定义初始化顺序表判断是否为空表获取表的长度展示顺序表classSeqList:"""顺序表的定义"""#初始化顺序表def__init__(self,maxSize):"""初始
- 代码随想录算法训练营第二天 | 209.长度最小的子数组 59.螺旋矩阵Ⅱ
decode12
算法矩阵
LeetCode209.长度最小的子数组:文章链接题目链接:209.长度最小的子数组看到题目后自己的思考题目所求为长度最小的子数组,且子数组中的元素在原数组中应该是相邻的。基于相邻这个特征和Carl中说可以用滑动窗口。我采取的方法是改变滑动窗口大小,其范围为1~len(list)。双重循环来进行求解。第一层为滑动窗口大小,第二层为根据滑动窗口获取子数组,并判断子数组总和是否>=target。一旦找
- 若依Ruoyi之智能售货机运营管理系统(新增运营运维工单管理)
爱吃java的羊儿
若依ruoyi框架sqljavaintellij-idea
idea抽取独立方法快捷键:ctrl+alt+mTaskDto.javapackagecom.dkd.manage.service.impl;importjava.time.Duration;importjava.util.List;importjava.util.stream.Collectors;importcn.hutool.core.bean.BeanUtil;importcn.hutoo
- java观察者模式
3213213333332132
java设计模式游戏观察者模式
观察者模式——顾名思义,就是一个对象观察另一个对象,当被观察的对象发生变化时,观察者也会跟着变化。
在日常中,我们配java环境变量时,设置一个JAVAHOME变量,这就是被观察者,使用了JAVAHOME变量的对象都是观察者,一旦JAVAHOME的路径改动,其他的也会跟着改动。
这样的例子很多,我想用小时候玩的老鹰捉小鸡游戏来简单的描绘观察者模式。
老鹰会变成观察者,母鸡和小鸡是
- TFS RESTful API 模拟上传测试
ronin47
TFS RESTful API 模拟上传测试。
细节参看这里:https://github.com/alibaba/nginx-tfs/blob/master/TFS_RESTful_API.markdown
模拟POST上传一个图片:
curl --data-binary @/opt/tfs.png http
- PHP常用设计模式单例, 工厂, 观察者, 责任链, 装饰, 策略,适配,桥接模式
dcj3sjt126com
设计模式PHP
// 多态, 在JAVA中是这样用的, 其实在PHP当中可以自然消除, 因为参数是动态的, 你传什么过来都可以, 不限制类型, 直接调用类的方法
abstract class Tiger {
public abstract function climb();
}
class XTiger extends Tiger {
public function climb()
- hibernate
171815164
Hibernate
main,save
Configuration conf =new Configuration().configure();
SessionFactory sf=conf.buildSessionFactory();
Session sess=sf.openSession();
Transaction tx=sess.beginTransaction();
News a=new
- Ant实例分析
g21121
ant
下面是一个Ant构建文件的实例,通过这个实例我们可以很清楚的理顺构建一个项目的顺序及依赖关系,从而编写出更加合理的构建文件。
下面是build.xml的代码:
<?xml version="1
- [简单]工作记录_接口返回405原因
53873039oycg
工作
最近调接口时候一直报错,错误信息是:
responseCode:405
responseMsg:Method Not Allowed
接口请求方式Post.
- 关于java.lang.ClassNotFoundException 和 java.lang.NoClassDefFoundError 的区别
程序员是怎么炼成的
真正完成类的加载工作是通过调用 defineClass来实现的;
而启动类的加载过程是通过调用 loadClass来实现的;
就是类加载器分为加载和定义
protected Class<?> findClass(String name) throws ClassNotFoundExcept
- JDBC学习笔记-JDBC详细的操作流程
aijuans
jdbc
所有的JDBC应用程序都具有下面的基本流程: 1、加载数据库驱动并建立到数据库的连接。 2、执行SQL语句。 3、处理结果。 4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
Html代码
St
- rome创建rss
antonyup_2006
tomcatcmsxmlstrutsOpera
引用
1.RSS标准
RSS标准比较混乱,主要有以下3个系列
RSS 0.9x / 2.0 : RSS技术诞生于1999年的网景公司(Netscape),其发布了一个0.9版本的规范。2001年,RSS技术标准的发展工作被Userland Software公司的戴夫 温那(Dave Winer)所接手。陆续发布了0.9x的系列版本。当W3C小组发布RSS 1.0后,Dave W
- html表格和表单基础
百合不是茶
html表格表单meta锚点
第一次用html来写东西,感觉压力山大,每次看见别人发的都是比较牛逼的 再看看自己什么都还不会,
html是一种标记语言,其实很简单都是固定的格式
_----------------------------------------表格和表单
表格是html的重要组成部分,表格用在body里面的
主要用法如下;
<table>
&
- ibatis如何传入完整的sql语句
bijian1013
javasqlibatis
ibatis如何传入完整的sql语句?进一步说,String str ="select * from test_table",我想把str传入ibatis中执行,是传递整条sql语句。
解决办法:
<
- 精通Oracle10编程SQL(14)开发动态SQL
bijian1013
oracle数据库plsql
/*
*开发动态SQL
*/
--使用EXECUTE IMMEDIATE处理DDL操作
CREATE OR REPLACE PROCEDURE drop_table(table_name varchar2)
is
sql_statement varchar2(100);
begin
sql_statement:='DROP TABLE '||table_name;
- 【Linux命令】Linux工作中常用命令
bit1129
linux命令
不断的总结工作中常用的Linux命令
1.查看端口被哪个进程占用
通过这个命令可以得到占用8085端口的进程号,然后通过ps -ef|grep 进程号得到进程的详细信息
netstat -anp | grep 8085
察看进程ID对应的进程占用的端口号
netstat -anp | grep 进程ID
&
- 优秀网站和文档收集
白糖_
网站
集成 Flex, Spring, Hibernate 构建应用程序
性能测试工具-JMeter
Hmtl5-IOCN网站
Oracle精简版教程网站
鸟哥的linux私房菜
Jetty中文文档
50个jquery必备代码片段
swfobject.js检测flash版本号工具
- angular.extend
boyitech
AngularJSangular.extendAngularJS API
angular.extend 复制src对象中的属性去dst对象中. 支持多个src对象. 如果你不想改变一个对象,你可以把dst设为空对象{}: var object = angular.extend({}, object1, object2). 注意: angular.extend不支持递归复制. 使用方法: angular.extend(dst, src); 参数:
- java-谷歌面试题-设计方便提取中数的数据结构
bylijinnan
java
网上找了一下这道题的解答,但都是提供思路,没有提供具体实现。其中使用大小堆这个思路看似简单,但实现起来要考虑很多。
以下分别用排序数组和大小堆来实现。
使用大小堆:
import java.util.Arrays;
public class MedianInHeap {
/**
* 题目:设计方便提取中数的数据结构
* 设计一个数据结构,其中包含两个函数,1.插
- ajaxFileUpload 针对 ie jquery 1.7+不能使用问题修复版本
Chen.H
ajaxFileUploadie6ie7ie8ie9
jQuery.extend({
handleError: function( s, xhr, status, e ) {
// If a local callback was specified, fire it
if ( s.error ) {
s.error.call( s.context || s, xhr, status, e );
}
- [机器人制造原则]机器人的电池和存储器必须可以替换
comsci
制造
机器人的身体随时随地可能被外来力量所破坏,但是如果机器人的存储器和电池可以更换,那么这个机器人的思维和记忆力就可以保存下来,即使身体受到伤害,在把存储器取下来安装到一个新的身体上之后,原有的性格和能力都可以继续维持.....
另外,如果一
- Oracle Multitable INSERT 的用法
daizj
oracle
转载Oracle笔记-Multitable INSERT 的用法
http://blog.chinaunix.net/uid-8504518-id-3310531.html
一、Insert基础用法
语法:
Insert Into 表名 (字段1,字段2,字段3...)
Values (值1,
- 专访黑客历史学家George Dyson
datamachine
on
20世纪最具威力的两项发明——核弹和计算机出自同一时代、同一群年青人。可是,与大名鼎鼎的曼哈顿计划(第二次世界大战中美国原子弹研究计划)相 比,计算机的起源显得默默无闻。出身计算机世家的历史学家George Dyson在其新书《图灵大教堂》(Turing’s Cathedral)中讲述了阿兰·图灵、约翰·冯·诺依曼等一帮子天才小子创造计算机及预见计算机未来
- 小学6年级英语单词背诵第一课
dcj3sjt126com
englishword
always 总是
rice 水稻,米饭
before 在...之前
live 生活,居住
usual 通常的
early 早的
begin 开始
month 月份
year 年
last 最后的
east 东方的
high 高的
far 远的
window 窗户
world 世界
than 比...更
- 在线IT教育和在线IT高端教育
dcj3sjt126com
教育
codecademy
http://www.codecademy.com codeschool
https://www.codeschool.com teamtreehouse
http://teamtreehouse.com lynda
http://www.lynda.com/ Coursera
https://www.coursera.
- Struts2 xml校验框架所定义的校验文件
蕃薯耀
Struts2 xml校验Struts2 xml校验框架Struts2校验
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年7月11日 15:54:59 星期六
http://fa
- mac下安装rar和unrar命令
hanqunfeng
mac
1.下载:http://www.rarlab.com/download.htm 选择
RAR 5.21 for Mac OS X 2.解压下载后的文件 tar -zxvf rarosx-5.2.1.tar 3.cd rar sudo install -c -o $USER unrar /bin #输入当前用户登录密码 sudo install -c -o $USER rar
- 三种将list转换为map的方法
jackyrong
list
在本文中,介绍三种将list转换为map的方法:
1) 传统方法
假设有某个类如下
class Movie {
private Integer rank;
private String description;
public Movie(Integer rank, String des
- 年轻程序员需要学习的5大经验
lampcy
工作PHP程序员
在过去的7年半时间里,我带过的软件实习生超过一打,也看到过数以百计的学生和毕业生的档案。我发现很多事情他们都需要学习。或许你会说,我说的不就是某种特定的技术、算法、数学,或者其他特定形式的知识吗?没错,这的确是需要学习的,但却并不是最重要的事情。他们需要学习的最重要的东西是“自我规范”。这些规范就是:尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加
- 评“女孩遭野蛮引产致终身不育 60万赔偿款1分未得”医腐深入骨髓
nannan408
先来看南方网的一则报道:
再正常不过的结婚、生子,对于29岁的郑畅来说,却是一个永远也无法实现的梦想。从2010年到2015年,从24岁到29岁,一张张新旧不一的诊断书记录了她病情的同时,也清晰地记下了她人生的悲哀。
粗暴手术让人发寒
2010年7月,在酒店做服务员的郑畅发现自己怀孕了,可男朋友却联系不上。在没有和家人商量的情况下,她决定堕胎。
12月5日,
- 使用jQuery为input输入框绑定回车键事件 VS 为a标签绑定click事件
Everyday都不同
jspinput回车键绑定clickenter
假设如题所示的事件为同一个,必须先把该js函数抽离出来,该函数定义了监听的处理:
function search() {
//监听函数略......
}
为input框绑定回车事件,当用户在文本框中输入搜索关键字时,按回车键,即可触发search():
//回车绑定
$(".search").keydown(fun
- EXT学习记录
tntxia
ext
1. 准备
(1) 官网:http://www.sencha.com/
里面有源代码和API文档下载。
EXT的域名已经从www.extjs.com改成了www.sencha.com ,但extjs这个域名会自动转到sencha上。
(2)帮助文档:
想要查看EXT的官方文档的话,可以去这里h
- mybatis3的mapper文件报Referenced file contains errors
xingguangsixian
mybatis
最近使用mybatis.3.1.0时无意中碰到一个问题:
The errors below were detected when validating the file "mybatis-3-mapper.dtd" via the file "account-mapper.xml". In most cases these errors can be d