VOA:The Woman Behind the Image of the Black Hole
The Woman Behind the Image of the Black HoleTrying to capture an image of a black hole is like trying to take a picture of an orange sitting on the surface of the moon from Earth——with your smartphone.
试图捕捉黑洞的一张图片就好比在地球上试图用智能手机去拍摄在月f球表面放着的一个橙子.
That is what Dr.Katie Bouman said two years ago during her TED talk called “How to take a picture of a black hole.”
这是两年前凯蒂·布曼博士在她的TED演讲《如果拍一张黑洞的照片》中所说的话.
Bouman is 29 years old. She received her doctoral degrees in computer science and enginnering fr ...
VOA:咖啡到底好不好?研究人员也说不清
Large Review of Coffee Studies Finds…Not Much NewFrom VOA Learning English,this is the Health&Lifestyle report.
这里是美国之音慢速英语与健康报道.
Which is more popular —— coffee or tea ?If you are on Team Coffee,you team may be ahead.
如果你站在咖啡队,那就加一分.
The well-known U.S. coffee shop Starbucks just opened its largest store in the land of tea: China!
美国著名的咖啡店星巴克在茶叶之国中国开了一家最大的门店!
The Shanghai Starbucks is 2,700 square meters and employs more than 400 people.
上海星巴克占地2700平方米,员工400多人.
But nw for the health ...
详解Linked list的实现方式及其应用
链表链表的定义链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的.链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成.每个结点包括两个部分: 一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域.
链表的使用场景
数据量较小.
不需要预先知道数据规模.
适应于频繁的插入操作.
链表的实现方式单向链表
首先定义一个链表123456789101112131415161718192021222324252627282930package pers.huangyuhui.linkedlist;/** * @ClassName: ListNode * @Description: 单向链表 * @author: HuangYuhui * @date: Apr 15, 2019 8:59:50 PM * */public class SinglyListNode<E> { private E data; private SinglyListNode<E> next;// the ...
VOA:Google`s Lookout App Helps Blind People Experience the World
谷歌推出Lookout 应用帮助盲人看世界Google has launched a new app desgined to help blind people explore their surroundings.
谷歌推出了一款新应用,旨在帮助盲人探索周围环境.
The free app,called Lookout,is currently available to users in the United States who own a Google Pixel device. The company says it hopes to bring Lookout to more devices and additional countries soon.
这款名为Lookout的免费应用,目前在美国拥有Google Pixel设备的用户都可以使用.谷歌公司表示,希望尽快让更多设备和国家可以使用Lookout应用.
The app was first announced at Google’s I/O developer conference in May 2018. S ...
VOA:Napping May Improve Learning,Memory
VOA : 午休对学习记忆有益From VOA Learning English,this is the Health & Lifestyle Report.
这里是美国之音慢速英语健康和生活报道.
March 16 is International Sleep Day.
3月16日是国际睡眠日.
And we should all celebrate the act of sleeping. Studies have shown that a good night’s rest helps us stay healthy,both mentally and physically. And researchers say sleep is probably the best tool we have for memeory and learning.
我们大家都应该庆祝睡眠这一行为.研究表明,晚上睡得好有益身心健康,研究人员说睡眠对记忆与学习来说也许是最佳的工具.
Michael Twery is director of National Center on Sle ...
一款瞄准大学生的交友软件:TinderU
TinderU App Amins to Help College Student Find Frends,Partner —— August 26, 2018It is back-to-school season in the United States,Mang youg adults are headed to colloges and universities.
有又到了美国开学季.不少年轻人就要踏进大学校园.
A new app might make their social lives as busy as their academic schedules.
一款新应用可能会让他们的社交生活和学业日程一样繁忙.
The popular dating app Tinder has just launched TinderU.The tool is designed to help students find friends,study partners and, possibly, love.
热门约会应用Tinder刚刚推出了TinderU.该工具旨在帮助学生找出 ...
Naming Notations
Java 命名规范Java总体命名规范
项目名全部小写.
包名全部小写.
类名首字母大写,其余组成词首字母依次大写.
变量名,方法名首字母小写,如果名称由多个单词组成,除首字母外的每个单词的首字母都要大写.
常量名全部大写.
所有命名规则必须遵循以下规则 :
名称只能由字母、数字、下划线、$符号组成.
不能以数字开头.
名称不能使用Java中的关键字.
坚决不允许出现中文及拼音命名.
Java包名命名规范
Java的包名由小写单词组成,包的路径符合所开发的系统模块的定义,以便通过包名可得知其属于哪个模块,从而方便到对应包里找相应的实现类.
常规包名为了保障每个Java Package命名的唯一性,在Java编程规范中要求开发人员在自己定义的包名前加上唯一的前缀.由于互联网上的域名称是不会重复的,所以多数开发人员采用自己公司在互联网上的域名称作为自己程序包的唯一前缀.例如 : com.sun.swt...
公司项目
com : 公司项目,copyright由项目发起的公司所有.
包名 : com.公司名.项目名.模块名..
团队项目
team : 团队项目,指由团队 ...
Java reflection
Java Reflection概念Reflection(反射)是被认为动态语言的关键,反射机制允许程序在执行期间借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法.
应用动态代理
反射机制提供的功能
在运行时判断任意一个对象所属的类.
在运行时构造人任意一个类的对象.
在运行时判断任意一个类所具有的成员变量和方法.
在运行时调用任意一个对象的成员变量和方法.
生成动态代理(体现动态语言的特性).
反射相关的主要API
java.lang.Class : 代表一个类.
java.lang.reflect.Method : 代表类的方法.
java.lang.reflect.Field : 代表类的成员变量.
java.lang.reflect.Constructor : 代表类的构造方法.
…
反射的简单应用示例
首先创建一个存储用户信息的类1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545 ...
Java annotation
Java注解 (元数据)注解的概念及作用
从JDK1.5开始,Java支持在源文件中嵌入补充信息,这类信息被称为注解(annotation).注解不会改变程序的动作,因此也就不会改变程序的语义,但是在开发和部署期间,各种工具可以使用这类信息,例如: 源代码生成器可以处理注解! 注: 如果没有注解信息处理流程(如:通过反射查询注解),则注解毫无意义 !
说明: 其实术语元数据(metadata),但是注解这个名称更具有描述性并且更常用.
声明注解
注解是一种代码级别的说明.它与类,接口,枚举在同一个层次,它可以声明在包,类,字段,方法,局部变量,方法参数等的前面,用来对这些元素进行说明,注释..
注解的分类
特殊的注解 : 标记注解,单成员注解.
内置注解.
类型注解.
重复注解.
内置注解内置注解分类
java.lang.annotation包下的注解分别是 : @Retention,@Documnetd,@Target,@Inherited
以上四个注解被称为元注解,其作用是负责注解其它的注解,用来提供对其它annotation类型做说明.
java.lang包下注 ...
详解Stack的实现方式及其应用
栈栈的定义 : 栈(Stack)是一个有序线性表,只能在表的一端(称为栈顶 : top)执行插入和删除操作.最后插入的元素将第一个被删除.所以,栈也称为后进先出(Last In Frist Out: LIFO)或先进后出(Fist In Last Out: FILO)线性表.注意点 : 两个改变栈的操作都有专用名称,一个称为入栈(psuh): 表示在栈中插入一个元素. 另一个称为出栈(pop): 表示从栈中删除一个元素.试图对一个空栈执行出栈的操作称为下溢(underflow). 试图对一个满栈执行入栈操作称为溢出(overflow). 通常溢出和下溢均被认为是异常.栈的应用
直接应用
符号匹配.
中缀表达式转换为后缀表达式.
计算后缀表达式.
实现函数的调用(包括递归).
求范围误差(极差).
网页浏览器中已访问页面的历史记录(后退back按钮).
文本编辑器中的撤销(undo)序列.
HTML和XML文件中的标签(tag)匹配.
间接应用
作为一个算法的辅助数据结构(例如: 树的遍历算法).
其它数据结构的组件(例如: 模拟队列).
推荐学习方法
推荐小伙伴们一个数据 ...