五脏六腑的机能与其疾病的原因

依据中医的解说,每个内脏器官间都有经脉连系,食物的治疗就是透过经脉的传递,才能发挥它的功效,这个过程叫做归经。

【肝】

一、储藏血液——肝病会有血虚、血滞的现象,同样的,血虚、血滞也会引起肝病的发作。
二,五胜之冠——肝的机能对于人的身体,就如同一个部队的将军,乃居首要位置。有一个强健的肝,就不容易罹患疾病。反之,若是肝衰弱,就容易生病。小孩子身体衰弱、易患感冒喉咙发炎、淋巴腺肿大等,都是肝功能异常所引起。
三、厌恶拘束——肝有喜好舒畅、厌恶拘束的性质,所以精神上受到压力,肝就会动气、焦急,造成肝功能异常。更年期的障碍以及经理级的职业病,都是属于这一类型的肝病。
四、支配肌肉及眼睛肝控制筋肉及眼睛,所以肝功能异常,会使肌肉紧张、容易疲劳及引起眼睛的疾病。

【心】

一、支配神气——神气就是思考、记忆、判断等精神状态。心支配神气,所以心患病时,就容易健忘、失眠,造成精神上的障碍。 二、支配血脉——心能支配血脉,所以它和肝一样,与血虚及血滞都有连带关系。

【脾】

一、支配食物的吸收——脾将食物的营养吸收,并分解成容易吸收的养分,输送到全身各器官。因为脾脏异常,往往会使消化能力衰退,造成营养不良,使身体消瘦。 二、支配肌肉、手、脚——身体过胖、太瘦或手脚冰冷、不想活动都是脾功能异常的症状 三,支配血液——脾的功能衰退,就会造成血虚的现象和容易出血的情形。

【肺】

一、支配呼吸——空气经肺的呼吸作用进入体内,供给所需要的氧气。肺部异常有气喘、咳嗽等呼吸器官的疾病。 二、支配津液的循环——津液循环也在肺的支配下进行。肺若染患疾病,则肺部会浮肿,皮肤会渐渐干枯。 三、支配皮肤——皮肤与肺也有很密切的关系,所以气喘或是慢性的支气管炎,以干布磨擦皮肤,也会有帮助。皮肤健康就表示肺部也很强健。 四、支配鼻子——鼻窦炎,暴脓症的发生,表示肺已有了异常的状况。

【肾】

一、储藏精气——精气有三种功能,其一为成长发育;其二是收食物中的养分,成为血气的来源;其三即支配生殖作用。肾有储藏精气的功能,所以有人称肾是人生命力的测量器,老化现象的出现就是肾虚的表示。 二、支配体内水分——体内所有的水分都在肾的支配下。浮肿、停滞、尿崩症、排尿次数颎繁等,都是由肾虚所引起的。 三支配骨、耳、发——肾虚使人容易衰老,进而导致骨骼变硬、变弯、重听、头发脱落等现象的产生。

六腑一胆、胃、小肠、大肠、膀胱、三焦、心包络

【胆】

下定决心——这里的决心并非指精神上的果断能力而言,而是给予诸器官动作的决定,如胃、肠等器官何时进行消化工作,何时停止,这些都由胆来决定。最明显的例子就是睡眠,使所有的器官进入休息状态,需要相当的“决心”,所以胆虚的人常会失眠。

【胃】

支配消化——胃能将食物消化成容易吸收的养分。食欲不振、消化不良、恶心呕吐都是胃病的症状。

【小肠】

将营养加以分类——小肠在摄取食物的养分时,便将它们分为水气。血三种,然后输入各需要器官。消化不良、下痢。便秘都是小肠方面的疾病。

【大肠】

一、支配排泄——大肠承受各器官吸收后的残渣,然后排出体外。便秘、下痢是大肠方面的疾病。 二、支配肛门——大肠发炎会使肛门红肿,甚至造成痔疮导致肛门出血。

【膀胱】

储藏水分——膀胱将体内的水分集中在一起,然后送到各需要的部位,再将多余的水排出体外。膀胱炎的症状是浮肿、排尿次数频繁。

【三焦】

辅助身体的循环——三焦能促进气、血及津液的循环,使各器官充分发挥它们的功能,因此三焦患病,会连带影响各器官的健康。

【心包络】

心包络虽然不是五脏六腑,但它能代替心脏的机能,一般人所说的心病,就是指心包络的疾病,心病较难治愈。 以上说明的就是五脏六腑的功能,及其疾病的特征。食物对于五脏六腑的功能就是归经,这在我国的医学史上,还算是一种新的观念。

外因、内因及其他原因

前段说明的是食物对于五脏六腑的功能,现在让我们来研究疾病发生的原因,以便对症下药。我国医学将病因大致分为外因、内因以及其他原因。
外因又称为邪气,是由生活环境中大自然的变化引起的疾病,如风、寒、暑、湿、燥等,均为外因,因此感冒又名为风邪。此外,热性的疾病、肌肉、限睛的疾病以及头晕等皆为风邪所造成的。寒邪则是急性的疼痛、寒证及睡寒(睡眠时身体受凉)的病因。暑邪乃是日射病及热射病的病因。至于季节性的腰酸背痛、急性肾炎,则是由湿邪所引起。连续于燥的天气,会发生燥邪造成的气喘及支气管炎等。火伤、烫伤是火邪所造成的最常见疾病。除比之外,前面所说的五邪进入体内后转变为严重的热证,也算是火邪的疾病了。
对于各种邪气所造成的疾病,各有不同的食物治疗方法。对于风邪的驱除叫做“去风”,其他称为“去寒”、“去湿”、“润燥泻出”。
内因就是指精神上的喜、怒、忧、思、悲、惊、恐等七情影响身体的状态。例如:极度的生气,就伤害肝而引起疾病。喜会影响心,思、悲能影响脾,忧会影响肺,而惊、恐则会影响肾的功能。
至于其他原因就是饮食不正常、疲劳、倦怠、外伤等日常生活上的问题。食量过小会营养不良,导致血气滞虚:而饮食过多会造成消化不,引起食滞或食伤。茶、麦芽等有帮助消化的功能,可以用于治疗食滞。过度疲劳会造成气血不足,反之,缺乏运动会引起血滞。另外打伤、扭伤等外伤的现象,都会造成气滞、血滞的发生。
事实上,疾病的原因通常都不只一个,况且经过了相当时间才发现的疾病,就更难追究其病因了。在此只作初步的说明,以配合食物药剂的使用。
关于食物治疗的基本原则,就介绍到此,现在特以姜做个例子,整理于下:
【四气五味】辣、温
【归经】肺、胃、
【效用】发散、驱寒、止呕、化痰
【主治】感冒、呕吐、痰饮、喘咳、胀、下痢
辣味有发散及促进循环的功能,将有辣味的食物温热后食用能驱散寒性的疾病,例如:风邪所引起的感冒,在其尚为表证时,可以食用姜来治疗。
呕吐、喘咳、下痢、胀滞都是肺、胃、脾等发生疾病的症状,辣味有开痰的功效,所以有归经的作用,食用辣味的食物,可以化开积在肺、胃、脾的痰。

中医中的四气五味

“四气”表示食物的功能

所谓四气就是食物进入体内后,所产生的热、温、凉、寒等四种作用,而没有发生任何作用的食物称为“平”。

中医将疾病分为热证与寒证两种。患部红肿发热、口渴、尿液为黄红色,这些是热证的症状,引起热证的原因有二,第一是温热性的邪气侵入体内,其二为体内阳气亢进的原故。另外,阴气不足而引起的热证叫做虚热。患有热证的时候,要食用冷性的食物。冷性食物分为微寒、大寒等,必须依病况所需,给予适当的食物治疗。 热证的成因不同,其治疗也就有所差异,例如对于侵入性的温热邪气,必须将之排出体外;对于过旺的阳气,要加以抑制;而不足的阴气,则需要弥补。总之,各种不同的病情,各有其适当的食治法。 手足冰冷、尿液透明、面色苍白等,都是寒证的症状。寒证的性质恰与热证相反,此乃恶寒邪气侵入体内,或是体内的阴气亢进,或是因为阳气不足的原故。治疗寒证的食物亦如同治疗热证时一样,分为排出性、压抑性及补充性三种,对于寒证的治疗,必须食用温热性的食物。总之,寒证患者与热证患者,在摄食方面,只是性质不同而已,原则上都是相似的。

食物分为五味

食物的酸、甜、苦、辣、咸五种味道,称为五味。食物消化后,酸味为肝胆所收,苦味为心脏、小肠所吸收,甜味为脾、胃所吸收,辣味为肺、大肠所吸收,咸味为肾脏、膀胱所吸收,各种不同性质的食物进入体内后,分别成为各个器官的营养。所以养分不足或过多都会引起内脏器官的疾病。例如喜欢甜食的人,他的消化器官往往都比较衰弱。西洋人所谓的消化器官,就是中国医学的脾、胃。西洋医学对于消化器官疾病的治疗,是禁止食用甜味的食物,然而中医的治疗方法,却是饮用稍有甜味的四君子汤”及“小建中汤”等。这就是中国医学中以毒攻毒的神奇例子,由此可见中医复杂之一斑。

酸味——有收敛,固涩的功能

食用酸性的食物有使身体收缩的功能,可以用于延缓疾病的发作;此外出汗太多,或排泄频繁,也可以食用酸性的食物来治疗。

辣味——有发散、促进循环的功能

中国医学依患病部位的不同,将疾病分为表证与里证。所谓表证即不包括内脏病痛的疾病,如热性的肌肉疼痛、关节炎、流鼻水、鼻塞等,以及慢性的肌肉与关节的麻痹、运动器官的障碍皆属之。总之,凡是身体外表异常的症状均属表证。关于内脏器官的疾病才称为里证。

辣味的食物有发散及促进血液循环的功能,一般表证都以发汗的方式来治疗,所以对于表证的治疗大多食用辣味食物。姜是最具代表性的辣味食物。

在人体内循环的有气、血、津液,这是中国医学的称法。“气”是体内活动力的来源,气停滞叫做气滞,气滞会使体内的运行受阻,而发生异常的状态。“血”可以说是各器官的养分,血液循环阻滞会产生局部性的疼痛、静脉瘤、月经不顺、经痛等,也会使血液呈暗红色,这种血液阻滞的现象称为血滞(瘀血)。“津液”就是人体内的水分,水滞会导致身体浮肿、胃里发出水声和引起如水的下痢。

对于以上种种停滞的症状,若食用辣味食物,便可使循环畅通,一切恢复到正常的状态。

甜味——有补养、弛缓、中和的功能

气血不足会使人疲倦,甜食有补充气血的功能,所以疲倦时都比较喜欢甜食,疼痛是由肌肉紧张而引起,甜食能解除肌肉的紧张,使身体柔软,这叫做弛缓作用。此外,甜食还能中和有毒性的东西,具有解毒的功能。

气血不足叫做虚证,治疗虚证都用甘草、大枣、蜂蜜、砂糖等。在汤液的处方里多半有甘草、大枣这两味。

苦味——有排除燥湿的功能

吃进了苦的东西,会令人呕吐,籍以排出体内的滞水。另外苦味的食物还有利尿的作用。

咸味——有软化硬物及促使下瘌的功能

咸的食物能软化体内酸性的硬块。甲状腺肿大的肿胀症状,就可用咸的海带或海澡来治疗、还有喝盐水能使胃肠内不千净的东西,以下痢的方式排出体外。食盐便是最具代表性的咸味食物。 现在将以上的说明归纳整理如下:

器官作用
酸味肝、胆收敛、固涩
苦味心、小肠排除燥湿
甜味脾、胃补养、弛缓、中和
辣味肺、大肠发散、促进循环
咸味肾、膀胱软化硬物、促使下痢

轻的食物浮升。重的食物沉降

食物还可以分为升、降,浮、沉四种不同的性质。升就是向上升高。火气。是心。咳嗽等是上升性的疾病。治疗上升性的疾病,就要食用降低性的食物。降就是向下降低,如内脏下垂、脱肛、下痢、排尿次数频繁,是下降性疾病,此时要服用上升性食物。浮是由内到外,为了不使感冒的症状由表证恶化成里证,就需要食用浮性的东西,葱白及姜是浮性的代表食物。沉是由外向内,排汗过多等浮性疾病,就靠沉性的食物来治疗,牡蛎是其代表性食品。

一般来说,升性食物亦兼有浮性,而降性的东西也都具有沉性。除了少数例外情形,升、降、浮、沉是很容易分辨的,花、叶是浮升性的;果实、种籽则是沉降性的;轻的东西是浮升性的,重的东西(如矿物)则属沉降性。

罗赛塔石碑Android破解版

Rosetta Stone中文叫做罗塞塔石碑,是一款非常受欢迎的语言学习应用,采用了独家的语言学习逻辑和久经验证的沉浸式方法,让你在真实的对话情境中进行练习,并会教你将所见到的情境与所要表达的内容进行关联,轻松直观地便可学习一门新的语言。同时,软件涵盖了各国语言,不论是西班牙语、汉语、日语、英语、德语,还是法语和意大利语、希伯来语、希腊语等等各国语言,通通可以满足你的语言需求,所设计的趣味性课程可以让你简便、正确地学习语言,并学会新语言的思维方式,相当不错。而此次分享的是罗塞塔石碑安卓破解版V7.1.0,该版本已解锁了所有高级订阅功能,所有课程都可以免费学习,感兴趣的小伙伴们快来下载试试吧。

下载地址:https://089u.com/f/32746380-501535358-fa6100
(访问密码:6789)

开源免费字体图标Font Awesome

Font Awesome是一套绝佳的图标字体库和CSS框架。这可是网络上最流行的图标集和工具包。4.7.0很经典,全新的5也很不错。如果你很难从官网下载,那么可以在我这里下载。

Version 4.7.0 下载:https://089u.com/f/32746380-501514447-5480cf
(访问密码:6789)

Vestion 5.11.2下载:https://089u.com/f/32746380-501514222-3385e1
(访问密码:6789)

官网地址(4.7.0):https://fontawesome.dashgame.com/

官网地址(5.11.2):https://fa5.dashgame.com/

kotlin以jdbc的方式连接操作SQLite数据库

首先要做的事是在build.gradle中引入jdbc驱动包的依赖:

implementation "org.xerial:sqlite-jdbc:3.32.3.2"

引入依赖包后,就可以写代码了,这里我封装了一个获取数据库连接并执行数据库操作的方法

    private const val url = "jdbc:sqlite:resources/static/file/hyjiao.db"
    /**
    * 获取数据库连接并执行数据库操作
    */
    private fun dose(block: (Connection) -> Unit) {
        try {
            DriverManager.getConnection(url).use {
                block(it)
            }
        } catch (e: SQLException) {
            System.err.println(e.message)
        }
    }

url中resources/static/file/hyjiao.db是我的SQLite数据库在项目中的相对路径,写绝对路径当然也是可以的。
写一个update方法,用于更新类型的操作:

    /**
     * 支持drop table、create table、insert into、update……等sql语句
     * @param sql 数据库查询语句
     * @param params PreparedStatement使用的参数
     * @param timeout 超时时间
     * @param block 接收返回的每一行数据
     */
    fun update(sql: String, params: Array<Any?>? = null, timeout: Int = 30): Boolean {
        var state = 0
        dose {
            if (params != null) {
                val statement = getPreparedStatement(it, sql, timeout, params)
                state = statement.executeUpdate()
            } else {
                val statement = it.createStatement()
                statement.queryTimeout = timeout
                state = statement.executeUpdate(sql)
            }
        }
        return state > 0
    }

根据是否传参数来选择使用PreparedStatement或Statement,PreparedStatement可以防止sql注入攻击,Statement没有这个功能。
再写一个query方法,用于查询操作:

    /**
     * 查询操作
     * @param sql 数据库查询语句
     * @param params PreparedStatement使用的参数
     * @param timeout 超时时间
     * @param block 接收返回的每一行数据
     */
    fun query(sql: String, params: Array<Any?>? = null, timeout: Int = 30, block: (ResultSet) -> Unit) {
        dose {
            if (params != null) {
                //使用PreparedStatement
                val statement = getPreparedStatement(it, sql, timeout, params)
                val rs = statement.executeQuery()
                while (rs.next()) {
                    block(rs)
                }
            } else {
                //使用Statement
                val statement = it.createStatement()
                statement.queryTimeout = timeout
                val rs = statement.executeQuery(sql)
                while (rs.next()) {
                    block(rs)
                }
            }
        }
    }

getPreparedStatement方法获取PreparedStatement并设置参数

    /**
     * 获取PreparedStatement并设置参数
     */
    private fun getPreparedStatement(
        it: Connection,
        sql: String,
        timeout: Int,
        params: Array<Any?>
    ): PreparedStatement {
        val statement = it.prepareStatement(sql)
        statement.queryTimeout = timeout
        for (i in 1..params.size) {
            when (val a = params[i - 1]) {
                null -> statement.setNull(i, Types.NULL)
                is String -> {
                    when {
                        RegexUtil.isTimestamp(a) -> {
                            statement.setTimestamp(i, Timestamp.valueOf(a))
                        }
                        RegexUtil.isShortDate(a) -> {
                            statement.setDate(i, Date.valueOf(a))
                        }
                        RegexUtil.isShortTime(a) -> {
                            statement.setTime(i, Time.valueOf(a))
                        }
                        else -> {
                            statement.setString(i, a)
                        }
                    }
                }
                is Boolean -> statement.setBoolean(i, a)
                is Byte -> statement.setByte(i, a)
                is Short -> statement.setShort(i, a)
                is Int -> statement.setInt(i, a)
                is Long -> statement.setLong(i, a)
                is Float -> statement.setFloat(i, a)
                is Double -> statement.setDouble(i, a)
                is BigDecimal -> statement.setBigDecimal(i, a)
                is ByteArray -> statement.setBytes(i, a)
                is Date -> statement.setDate(i, a)
                is Time -> statement.setTime(i, a)
                is Timestamp -> statement.setTimestamp(i, a)
                else -> statement.setString(i, a.toString())
            }
        }
        return statement
    }

上面这段代码写的比较啰嗦,其实可以写少一些类型判断的。
向数据库表中插入数据

val user = User("hyjiao","123456")
val sql = "insert into User(name,password) values(?,?)"
val flag = DBUtil.update(sql, arrayOf(user.name, user.password))

查询操作

val name = "hyjiao"
var user: User? = null
val sql = "select * from User where name=?"
DBUtil.query(sql, arrayOf(name)) {
    user = User(it.getString("name"), it.getString("password"), it.getInt("id"))
}

kotlin介绍

Kotlin是一门让开发人员更快乐的现代编程语言,号称永远开源。

适用于

移动端跨平台、原生、数据科学、服务端、Web开发、Android

为什么选择Kotlin?

简洁

大大减少样板代码的数量

/*
 使用一行代码创建一个包含 getters、 setters、 `equals()`、 `hashCode()`、 `toString()` 以及 `copy()` 的 POJO:
*/

data class Customer(val name: String, val email: String, val company: String)

// 或者使用 lambda 表达式来过滤列表:

val positiveNumbers = list.filter { it > 0 }

// 想要单例?创建一个 object 就可以了:

object ThisIsASingleton {
    val companyName: String = "JetBrains"
}

安全

避免空指针异常等整个类的错误

/*
 彻底告别那些烦人的 NullPointerException——著名的十亿美金的错误
*/

var output: String
output = null   // 编译错误

// Kotlin 可以保护你避免对可空类型进行误操作

val name: String? = null    // 可空类型
println(name.length())      // 编译错误

// 并且如果类型检测正确,编译器会为你做自动类型转换

fun calculateTotal(obj: Any) {
    if (obj is Invoice)
        obj.calculateTotal()
}

互操作性

充分利用 JVM、Android 和浏览器的现有库

/*
 使用 JVM 上的任何现有库,因为有 100% 的兼容性,包括 SAM 支持。
*/

import io.reactivex.Flowable
import io.reactivex.schedulers.Schedulers

Flowable
    .fromCallable {
        Thread.sleep(1000) //  模仿高开销的计算
        "Done"
    }
    .subscribeOn(Schedulers.io())
    .observeOn(Schedulers.single())
    .subscribe(::println, Throwable::printStackTrace)
// 无论是面向 JVM 还是 JavaScript 平台,都可用 Kotlin 写代码然后部署到你想要的地方

import kotlin.browser.window

fun onLoad() {
    window.document.body!!.innerHTML += "<br/>Hello, Kotlin!"
}

工具友好

可用任何 Java IDE 或者使用命令行构建。

kotlin官网:https://kotlinlang.org/

kotlin中文网:https://www.kotlincn.net/

解决Gradle(或Maven)依赖下载慢

引言: 开发过程中,编译很慢是让人头痛的事儿。特别是在下载依赖包的时候,由于仓库者在国外,所以那速度真的是很慢很慢。可以用科学上网的方式来解决,然而现在科学上网也不容易啊。比较好的办法是替换成阿里的镜像,可以完美解决问题。

以Android studio下的修改为例,我们可以修改build.gradle文件。

repositories {
    maven { url 'https://maven.aliyun.com/repository/google' }
    maven { url 'https://maven.aliyun.com/repository/public' }
    google()
    mavenCentral()
}
allprojects {
    repositories {
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        google()
        mavenCentral()
    }
}

下载依赖包时会优先使用排在前面的,所以google()和mavenCentral()可以不用删除。
如果不是Android开发,或需要使用来别的仓库怎么办呢?去阿里云云效Maven的网站去看看就会用了。上面有仓库介绍和配置指南。链接地址:https://maven.aliyun.com/mvn/guide

Android录音的两种方式

Android提供了两个类用于实现录音功能:MediaRecorder、AudioRecord。

1.MediaRecorder

MediaRecorder封装度高,调用简单方便,直接输出文件。
下面是我封装的一个工具类:

class MediaRecorderUtil private constructor() {
    private var mr: MediaRecorder? = null

    /**
     * 录音文件目录
     */
    var dir = ""

    /**
     * 录音文件名(需要加后缀)
     */
    var filename = ""

    /**
     * 音频输入源
     */
    var source = MediaRecorder.AudioSource.MIC

    /**
     * 输出文件格式
     */
    var outputFormat = MediaRecorder.OutputFormat.DEFAULT

    /**
     * 音频编码器
     */
    var encoder = MediaRecorder.AudioEncoder.AAC

    /**
     * 采样率
     */
    var samplingRate = 44100

    /**
     * 音频通道数
     */
    var channels = AudioFormat.CHANNEL_IN_DEFAULT

    /**
     * 音频编码比特率
     */
    var encodingBitRate = AudioFormat.ENCODING_PCM_16BIT

    companion object {
        fun create(block: MediaRecorderUtil.() -> Unit): MediaRecorderUtil {
            return MediaRecorderUtil().apply { block() }
        }
    }

    /**
     * 开始录音
     */
    fun startRecord() {
        val parent = File(dir)
        if (!parent.exists()) {
            parent.mkdirs()
        }
        val soundFile = File(dir, filename)
        if (!soundFile.exists()) {
            soundFile.createNewFile()
        }
        mr = MediaRecorder().apply {
            setAudioSource(source)
            setOutputFormat(outputFormat)
            setOutputFile(soundFile.absolutePath)
            setAudioEncoder(encoder)
            setAudioSamplingRate(samplingRate)
            setAudioChannels(channels)
            setAudioEncodingBitRate(encodingBitRate)
            try {
                prepare()
                start()
            } catch (e: IOException) {
                HyLog.e("MediaRecorderUtil", e.message.toString())
            }
        }
    }

    /**
     * 停止录音
     */
    fun stopRecord() {
        try {
            mr?.stop()
        } catch (e: IllegalStateException) {
            HyLog.e("MediaRecorderUtil", e.message.toString())
        }
        mr?.release()
        mr = null
    }
}

调用示例:

    val util = MediaRecorderUtil.create {
        dir = filesDir.absolutePath
        filename = "myAudio.aac"
    }
    util.startRecord()

停止录音:

    util.stopRecord()

2.AudioRecord

AudioRecord可以对语音数据实时处理,比如边录边播。
我也封了一个工具类:

class AudioRecordUtil private constructor() {
    private var ar: AudioRecord? = null
    private val defaultBufferSize = 2048

    /**
     * 是否正在录音
     */
    private var isRecording = false

    /**
     * 音频输入源
     */
    var audioSource = MediaRecorder.AudioSource.MIC

    /**
     * 采样率
     */
    var sampleRate = 44100

    /**
     * 音频通道数
     */
    var channel = AudioFormat.CHANNEL_IN_DEFAULT

    /**
     * 音频编码比特率
     */
    var audioFormat = AudioFormat.ENCODING_PCM_16BIT

    /**
     * 缓存区大小
     */
    var bufferSizeInBytes = AudioFormat.ENCODING_PCM_16BIT

    companion object {
        fun create(block: AudioRecordUtil.() -> Unit): AudioRecordUtil {
            return AudioRecordUtil().apply { block() }
        }
    }

    /**
     * 开始录音
     * @param block 处理数据流的方法
     */
    fun startRecord(block: (ByteArray, Int) -> Unit) {
        try {
            //计算AudioRecord内部buffer最小值
            val minBufferSize = AudioRecord.getMinBufferSize(sampleRate, channel, audioFormat)
            //取defaultBufferSize和minBufferSize中的大值
            val size = defaultBufferSize.coerceAtLeast(minBufferSize)
            val mBuffer = ByteArray(size)
            ar = AudioRecord(audioSource, sampleRate, channel, audioFormat, size).apply {
                isRecording = true
                startRecording() ////开始录音
                while (isRecording) {
                    val read = read(mBuffer, 0, size)
                    if (read <= 0) {
                        isRecording = false
                    } else {
                        //处理数据流
                        block(mBuffer, read)
                    }
                }
            }
            stopRecord()
        } catch (e: Exception) {
            HyLog.e("AudioRecordUtil", e.message.toString())
        } finally {
            ar?.release()
        }
    }

    /**
     * 停止录音
     */
    fun stopRecord() {
        isRecording = false
        ar?.let {
            it.stop()
            it.release()
        }
        ar = null
    }
}

调用示例:

    val util =AudioRecordUtil.create {
        //可以对音频格式等进行设置
    }
    util.startRecord { bytes, i ->
        //处理数据流
    }

停止录音:

    util.stopRecord()

Android使用Room操作数据库

首先要使用Room,需要在app/build.gradle文件中添加如下依赖:

apply plugin: 'kotlin-kapt'

dependencies {
    ...
    implementation "androidx.room:room-runtime:2.2.5"
    kapt "androidx.room:room-compiler:2.2.5"
}

实体类的声明:

@Entity
data class UserInfo(var nikeName: String, var gender: Int, var phone: String, var age: Int) {
    @PrimaryKey(autoGenerate = true)
    var id: Long = 0
}

创建Dao接口:

@Dao
interface UserInfoDao {
    @Insert
    fun insertUserInfo(userInfo: UserInfo): Long

    @Update
    fun updateUserInfo(newInfo: UserInfo)

    @Query("select * from UserInfo")
    fun loadAllUsersInfo(): List<UserInfo>

    @Query("select * from UserInfo where age>:age")
    fun loadUserInfoOrderThan(age: Int): List<UserInfo>

    @Delete
    fun deleteUserInfo(user: UserInfo)

    @Query("delete from UserInfo where nikeName=:nikeName")
    fun deleteByNikeName(nikeName: String): Int
}

定义Database:

@Database(version = 1, entities = [UserInfo::class])
abstract class AppDatabase : RoomDatabase() {
    abstract fun userInfoDao(): UserInfoDao

    companion object {
        private var instance: AppDatabase? = null

        @Synchronized
        fun getDatabase(context: Context): AppDatabase {
            instance?.let { return it }
            return Room.databaseBuilder(context.applicationContext, AppDatabase::class.java, "app_database").build()
                .apply {
                    instance = this
                }
        }
    }
}

简单粗暴式数据库升级:

Room.databaseBuilder(context.applicationContext, AppDatabase::class.java, "app_database")
    .fallbackToDestructiveMigration()
    .build()

不销毁原有数据的升级方式:

@Database(version = 2, entities = [UserInfo::class,Book::class])
abstract class AppDatabase : RoomDatabase() {
    abstract fun userInfoDao(): UserInfoDao
    abstract fun bookDao(): BookDao

    companion object {
        private var instance: AppDatabase? = null
        val migration_1_2 = object : Migration(1, 2) {
            override fun migrate(database: SupportSQLiteDatabase) {
                database.execSQL("create table Book(id integer primary key autoincrement not null,name text not null,pages integer not null)")
            }
        }

        @Synchronized
        fun getDatabase(context: Context): AppDatabase {
            instance?.let { return it }
            return Room.databaseBuilder(context.applicationContext, AppDatabase::class.java, "app_database")
                .addMigrations(migration_1_2)
                .build()
                .apply {
                    instance = this
                }
        }
    }
}

插入数据的例子:

    val userInfoDao = AppDatabase.getDatabase(this).userInfoDao()
    val user1 = UserInfo("hyjiao", 0, "18600000000", 25)
    thread {
        user1.id = userInfoDao.insertUserInfo(user1)
    }

android使用kotlin自定义控件

定义一个类,继承Android官方提供的控件,如View、TextView、LinearLayout……代码如下:

class CustomerView(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : View(
    context,
    attrs,
    defStyleAttr
) {
    init {
        TODO("初始化操作")
    }
}

如果想自己用画布和画笔去画界面,那就重写onDraw方法,例如:

override fun onDraw(canvas: Canvas?) {
    super.onDraw(canvas)
    val paint = Paint().apply {
        color = Color.BLUE
        textSize = 18f
    }
    canvas?.drawText("我就试试", 50f, 50f, paint)
}

比较方便的做法当然是使用布局文件了。使用布局文件,自定义的控件类要继承ViewGroup或ViewGroup的子类。举个例子:

class CustomerView(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : FrameLayout(
    context,
    attrs,
    defStyleAttr
) {
    init {
        inflate(context, R.layout.hy_title_bar, this)
    }
}

如果需要自定义属性,首先在res/values/attrs.xml中定义:

    <declare-styleable name="CustomerView">
        <attr name="myTextSize" format="dimension"/>
        <attr name="myTextColor" format="reference|color"/>
        <attr name="myTextLeft" format="string"/>
        <attr name="myTextTop" format="string"/>
        <attr name="myTextRight" format="string"/>
        <attr name="myTextBottom" format="string"/>
    </declare-styleable>

然后在CustomerView去初始化属性的值:

init {
    inflate(context, R.layout.hy_title_bar, this)
    val typedArray: TypedArray = context.obtainStyledAttributes(attrs, R.styleable.CustomerView)
    TODO("获取设置的值,并做一些操作")
    typedArray.recycle()
}

道德经

【第一章】

道可道,非常道;名可名,非常名。无名天地之始,有名万物之母。故常无欲,以观其妙;常有欲,以观其徼(jiào)。此两者同出而异名,同谓之玄,玄之又玄,众妙之门。

【第二章】

天下皆知美之为美,斯恶(è)已;皆知善之为善,斯不善已。故有无相生,难易相成,长短相较,高下相倾,音声相和(hè),前后相随。是以圣人处无为之事,行不言之教,万物作焉而不辞,生而不有,为而不恃,功成而弗居。夫(fú)唯弗居,是以不去。

【第三章】

不尚贤,使民不争;不贵难得之货,使民不为盗;不见(xiàn)可欲,使民心不乱。是以圣人之治,虚其心,实其腹;弱其志,强其骨。常使民无知无欲,使夫(fú)智者不敢为也。为无为,则无不治。

【第四章】

道冲而用之或不盈,渊兮似万物之宗。挫其锐,解其纷,和其光,同其尘。湛兮似或存,吾不知谁之子,象帝之先。

【第五章】

天地不仁,以万物为刍(chú)狗;圣人不仁,以百姓为刍狗。天地之间,其犹橐龠(tuóyuè)乎?虚而不屈,动而愈出。多言数(shuò)穷,不如守中。

【第六章】

谷神不死,是谓玄牝(pìn),玄牝之门,是谓天地根。绵绵若存,用之不勤。

【第七章】

天长地久。天地所以能长且久者,以其不自生,故能长生。是以圣人后其身而身先,外其身而身存。非以其无私邪(yé)?故能成其私。

【第八章】

上善若水。水善利万物而不争,处众人之所恶(wù),故几(jī)于道。居善地,心善渊,与善仁,言善信,正善治,事善能,动善时。夫唯不争,故无尤。

【第九章】

持而盈之,不如其已。揣(chuǎi)而锐之,不可长保。金玉满堂,莫之能守。富贵而骄,自遗(yí)其咎。功成身退,天之道。

【第十章】

载(zài)营魄抱一,能无离乎?专气致柔,能婴儿乎?涤除玄览,能无疵乎?爱民治国,能无知(zhì)乎?天门开阖(hé),能无雌乎?明白四达,能无为乎?生之、畜(xù)之,生而不有,为而不恃,长(zhǎng)而不宰,是谓玄德。

【第十一章】

三十辐共一毂(gǔ),当其无,有车之用。埏埴(shānzhí)以为器,当其无,有器之用。凿户牖(yǒu)以为室,当其无,有室之用。故有之以为利,无之以为用。

【第十二章】

五色令人目盲,五音令人耳聋,五味令人口爽,驰骋畋(tián)猎令人心发狂,难得之货令人行妨。是以圣人为腹不为目,故去彼取此。

【第十三章】

宠辱若惊,贵大患若身。何谓宠辱若惊?宠为下,得之若惊,失之若惊,是谓宠辱若惊。何谓贵大患若身?吾所以有大患者,为吾有身,及吾无身,吾有何患!故贵以身为天下,若可寄天下;爱以身为天下,若可托天下。

【第十四章】

视之不见名曰夷,听之不闻名曰希,搏之不得名曰微。此三者不可致诘(jié),故混(hùn)而为一。其上不皦(jiǎo皎),其下不昧。绳绳(mǐnmǐn)不可名,复归于无物,是谓无状之状,无物之象。是谓惚恍。迎之不见其首,随之不见其后。执古之道,以御今之有,能知古始,是谓道纪。

【第十五章】

古之善为士者,微妙玄通,深不可识。夫唯不可识,故强(qiǎng)为之容。豫焉若冬涉川,犹兮若畏四邻,俨兮其若容,涣兮若冰之将释,敦兮其若朴,旷兮其若谷,混兮其若浊。孰能浊以静之徐清?孰能安以久动之徐生?保此道者不欲盈,夫唯不盈,故能蔽不新成。

【第十六章】

致虚极,守静笃(dǔ),万物并作,吾以观复。夫物芸芸,各复归其根。归根曰静,是谓复命。复命曰常,知常曰明,不知常,妄作,凶。知常容,容乃公,公乃王(wàng),王(wàng)乃天,天乃道,道乃久,没(mò)身不殆。

【第十七章】

太上,下知有之。其次,亲而誉之。其次,畏之。其次,侮之。信不足焉,有不信焉。悠兮其贵言。功成事遂,百姓皆谓我自然。

【第十八章】

大道废,有仁义;慧智出,有大伪;六亲不和,有孝慈;国家昏乱,有忠臣。

【第十九章】

绝圣弃智,民利百倍;绝仁弃义,民复孝慈;绝巧弃利,盗贼无有。此三者,以为文不足,故令有所属,见(xiàn)素抱朴,少私寡欲。

【第二十章】

绝学无忧。唯之与阿(ē),相去几何?善之与恶,相去若何?人之所畏,不可不畏。荒兮其未央哉!众人熙熙,如享太牢,如春登台。我独泊兮其未兆,如婴儿之未孩。傫傫(lěi)兮若无所归。众人皆有余,而我独若遗。我愚人之心也哉!沌沌兮!俗人昭昭,我独昏昏;俗人察察,我独闷闷。澹(dàn)兮其若海,飂(liù)兮若无止。众人皆有以,而我独顽似鄙。我独异于人,而贵食(sì)母。

【第二十一章】

孔德之容,惟道是从。道之为物,惟恍惟惚。惚兮恍兮,其中有象;恍兮惚兮,其中有物。窈(yǎo)兮冥兮,其中有精;其精甚真,其中有信。自古及今,其名不去,以阅众甫。吾何以知众甫之状哉?以此。

【第二十二章】

曲则全,枉则直,洼则盈,敝则新,少则得,多则惑。是以圣人抱一,为天下式。不自见(xiàn)故明,不自是故彰,不自伐故有功,不自矜故长。夫唯不争,故天下莫能与之争。古之所谓曲则全者,岂虚言哉!诚全而归之。

【第二十三章】

希言自然。故飘风不终朝(zhāo),骤雨不终日。孰为此者?天地。天地尚不能久,而况于人乎?故从事于道者,道者同于道,德者同于德,失者同于失。同于道者,道亦乐得之;同于德者,德亦乐得之;同于失者,失亦乐得之。信不足焉,有不信焉。

【第二十四章】

企者不立,跨者不行,自见(xiàn)者不明,自是者不彰,自伐者无功,自矜者不长。其在道也,曰余食赘(zhuì)行。物或恶(wù)之,故有道者不处(chǔ)。

【第二十五章】

有物混(hùn)成,先天地生。寂兮寥兮,独立不改,周行而不殆,可以为天下母。吾不知其名,字之曰道,强(qiǎng)为之名曰大。大曰逝,逝曰远,远曰反。故道大,天大,地大,王亦大。域中有四大,而王居其一焉。人法地,地法天,天法道,道法自然。

【第二十六章】

重为轻根,静为躁君。是以圣人终日行不离辎(zī)重。虽有荣观(guàn),燕处超然,奈何万乘(shèng)之主,而以身轻天下?轻则失本,躁则失君。

【第二十七章】

善行无辙迹,善言无瑕谪(xiázhé),善数(shǔ)不用筹策,善闭无关楗(jiàn)而不可开,善结无绳约而不可解。是以圣人常善救人,故无弃人;常善救物,故无弃物,是谓袭明。故善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷,是谓要妙。

【第二十八章】

知其雄,守其雌,为天下溪。为天下溪,常德不离,复归于婴儿。知其白,守其黑,为天下式。为天下式,常德不忒(tè),复归于无极。知其荣,守其辱,为天下谷。为天下谷,常德乃足,复归于朴。朴散则为器,圣人用之则为官长(zhǎng)。故大制不割。

【第二十九章】

将欲取天下而为之,吾见其不得已。天下神器,不可为也。为者败之,执者失之。故物或行或随,或歔(xū)或吹,或强或羸(léi),或挫或隳(huī)。是以圣人去甚,去奢,去泰。

【第三十章】

以道佐人主者,不以兵强天下,其事好(hào)还。师之所处,荆棘生焉。大军之后,必有凶年。善有果而已,不敢以取强。果而勿矜,果而勿伐,果而勿骄,果而不得已,果而勿强。物壮则老,是谓不道,不道早已。

【第三十一章】

夫佳兵者,不祥之器。物或恶(wù)之,故有道者不处(chǔ)。君子居则贵左,用兵则贵右。兵者,不祥之器,非君子之器。不得已而用之,恬淡为上,胜而不美。而美之者,是乐(yào)杀人。夫乐(yào)杀人者,则不可以得志于天下矣。吉事尚左,凶事尚右。偏将军居左,上将军居右,言以丧(sāng)礼处之。杀人之众,以哀悲泣之,战胜,以丧礼处之。

【第三十二章】

道常无名,朴虽小,天下莫能臣也。侯王若能守之,万物将自宾。天地相合以降甘露,民莫之令而自均。始制有名,名亦既有,夫亦将知止。知止可以不殆。譬道之在天下,犹川谷之于江海。

【第三十三章】

知人者智,自知者明。胜人者有力,自胜者强。知足者富,强行者有志,不失其所者久,死而不亡者寿。

【第三十四章】

大道泛兮,其可左右。万物恃之而生而不辞,功成不名有,衣养万物而不为主,常无欲,可名于小;万物归焉而不为主,可名为大。以其终不自为大,故能成其大。

【第三十五章】

执大象,天下往;往而不害,安平太。乐(yuè)与饵,过客止。道之出口,淡乎其无味,视之不足见(jiàn),听之不足闻,用之不足既。

【第三十六章】

将欲歙(xī)之,必固张之;将欲弱之,必固强之;将欲废之,必固兴之;将欲夺之,必固与之,是谓微明。柔弱胜刚强。鱼不可脱于渊,国之利器不可以示人。

【第三十七章】

道常无为而无不为,侯王若能守之,万物将自化。化而欲作,吾将镇之以无名之朴。无名之朴,夫亦将无欲。不欲以静,天下将自定。

【第三十八章】

上德不德,是以有德;下德不失德,是以无德。上德无为而无以为,下德为之而有以为。上仁为之而无以为,上义为之而有以为,上礼为之而莫之应,则攘(rǎng)臂而扔之。故失道而后德,失德而后仁,失仁而后义,失义而后礼。夫礼者,忠信之薄(bó)而乱之首。前识者,道之华而愚之始。是以大丈夫处其厚,不居其薄(bó);处其实,不居其华。故去彼取此。

【第三十九章】

昔之得一者,天得一以清,地得一以宁,神得一以灵,谷得一以盈,万物得一以生,侯王得一以为天下贞。其致之。天无以清将恐裂,地无以宁将恐发(fèi,“发”通“废”),神无以灵将恐歇,谷无以盈将恐竭,万物无以生将恐灭,侯王无以贵高将恐蹶(jué)。故贵以贱为本,高以下为基。是以侯王自谓孤寡不穀(谷gǔ)。此非以贱为本邪(yé)?非乎?故致数(shuò)舆(yù)无舆。不欲琭(lù)琭如玉,珞(luò)珞如石。

【第四十章】

反者,道之动;弱者,道之用。天下万物生于有,有生于无。

【第四十一章】

上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之,不笑不足以为道。故建言有之:明道若昧,进道若退,夷道若颣(lèi)。上德若谷,大白若辱,广德若不足,建德若偷,质真若渝(yú)。大方无隅(yú),大器晚成,大音希声,大象无形。道隐无名,夫唯道善贷且成。

【第四十二章】

道生一,一生二,二生三,三生万物。万物负阴而抱阳,冲气以为和。人之所恶(wù),唯孤寡不穀(谷gǔ),而王公以为称(chēng)。故物,或损之而益,或益之而损。人之所教(jiào),我亦教之。强梁者不得其死,吾将以为教父。

【第四十三章】

天下之至柔,驰骋天下之至坚,无有入无间,吾是以知无为之有益。不言之教,无为之益,天下希及之。

【第四十四章】

名与身孰亲?身与货孰多?得与亡孰病?是故甚爱必大费,多藏必厚亡。知足不辱,知止不殆,可以长久。

【第四十五章】

大成若缺,其用不弊。大盈若冲,其用不穷。大直若屈,大巧若拙,大辩若讷。躁胜寒,静胜热。清静为天下正。

【第四十六章】

天下有道,却走马以粪;天下无道,戎马生于郊。祸莫大于不知足,咎莫大于欲得,故知足之足,常足矣。

【第四十七章】

不出户,知天下;不窥牖,见天道。其出弥远,其知弥少。是以圣人不行而知,不见而名,不为而成。

【第四十八章】

为学日益,为道日损。损之又损,以至于无为,无为而无不为。取天下常以无事,及其有事,不足以取天下。

【第四十九章】

圣人无常心,以百姓心为心。善者,吾善之;不善者,吾亦善之,德善。信者,吾信之;不信者,吾亦信之,德信。圣人在天下歙歙(xīxī),为天下浑其心。(百姓皆注其耳目),圣人皆孩之。

【第五十章】

出生入死。生之徒十有三,死之徒十有三。人之生动之死地,亦十有三。夫何故?以其生生之厚。盖闻善摄生者,陆行不遇兕(sì)虎,入军不被(pī)甲兵,兕无所投其角,虎无所措其爪(zhǎo),兵无所容其刃。夫何故?以其无死地。

【第五十一章】

道生之,德畜(xù)之,物形之,势成之。是以万物莫不尊道而贵德。道之尊,德之贵,夫莫之命而常自然。故道生之,德畜之。长之、育之、亭之、毒之、养之、覆之。生而不有,为而不恃,长(zhǎng)而不宰,是谓玄德。

【第五十二章】

天下有始,以为天下母。既得其母,以知其子;既知其子,复守其母,没(mò)身不殆。塞(sè)其兑,闭其门,终身不勤。开其兑,济其事,终身不救。见(jiàn)小曰明,守柔曰强。用其光,复归其明,无遗身殃,是为习常。

【第五十三章】

使我介然有知,行于大道,唯施(迤yí)是畏。大道甚夷,而民好径。朝(cháo)甚除,田甚芜,仓甚虚。服文彩,带利剑,厌饮食,财货有余,是为盗夸。非道也哉!

【第五十四章】

善建者不拔,善抱者不脱,子孙以祭祀不辍。修之于身,其德乃真;修之于家,其德乃余;修之于乡,其德乃长(zhǎng);修之于国,其德乃丰;修之于天下,其德乃普。故以身观身,以家观家,以乡观乡,以国观国,以天下观天下。吾何以知天下然哉?以此。

【第五十五章】

含德之厚,比于赤子。蜂虿(chài)虺(huǐ)蛇不螫(shì),猛兽不据,攫(jué)鸟不搏。骨弱筋柔而握固。未知牝牡之合而全作,精之至也。终日号而不嗄(shà),和之至也。知和曰常,知常曰明,益生曰祥,心使气曰强。物壮则老,谓之不道,不道早已。

【第五十六章】

知(zhì)者不言,言者不知(zhì)。塞(sè)其兑,闭其门,挫其锐;解其纷,和其光,同其尘,是谓玄同。故不可得而亲,不可得而疏;不可得而利,不可得而害;不可得而贵,不可得而贱,故为天下贵。

【第五十七章】

以正治国,以奇用兵,以无事取天下。吾何以知其然哉?以此。天下多忌讳,而民弥贫;民多利器,国家滋昏;人多伎(jì)巧,奇物滋起;法令滋彰,盗贼多有。故圣人云:“我无为而民自化,我好静而民自正,我无事而民自富,我无欲而民自朴。”

【第五十八章】

其政闷闷,其民淳淳;其政察察,其民缺缺。祸兮福之所倚,福兮祸之所伏。孰知其极?其无正。正复为奇,善复为妖,人之迷,其日固久。是以圣人方而不割,廉而不刿(guì),直而不肆,光而不耀。

【第五十九章】

治人事天莫若啬(sè)。夫唯啬,是谓早服。早服谓之重(chóng)积德,重(chóng)积德则无不克,无不克则莫知其极,莫知其极,可以有国。有国之母,可以长久。是谓深根固柢(dǐ),长生久视之道。

【第六十章】

治大国若烹小鲜。以道莅(lì)天下,其鬼不神。非其鬼不神,其神不伤人;非其神不伤人,圣人亦不伤人。夫两不相伤,故德交归焉。

【第六十一章】

大国者下流。天下之交,天下之牝。牝常以静胜牡,以静为下。故大国以下小国,则取小国;小国以下大国,则取大国。故或下以取,或下而取。大国不过欲兼畜(xù)人,小国不过欲入事人,夫两者各得其所欲,大者宜为下。

【第六十二章】

道者万物之奥,善人之宝,不善人之所保。美言可以市,尊行可以加人。人之不善,何弃之有!故立天子,置三公,虽有拱璧以先驷马,不如坐进此道。古之所以贵此道者何?不曰以求得,有罪以免邪(yé)?故为天下贵。

【第六十三章】

为无为,事无事,味无味。大小多少,报怨以德。图难于其易,为大于其细。天下难事必作于易,天下大事必作于细,是以圣人终不为大,故能成其大。夫轻诺必寡信,多易必多难,是以圣人犹难之。故终无难矣。

【第六十四章】

其安易持,其未兆易谋,其脆易泮(pàn),其微易散。为之于未有,治之于未乱。合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。为者败之,执者失之。是以圣人无为,故无败;无执,故无失。民之从事,常于几成而败之。慎终如始,则无败事。是以圣人欲不欲,不贵难得之货。学不学,复众人之所过。以辅万物之自然,而不敢为。

【第六十五章】

古之善为道者,非以明民,将以愚之。民之难治,以其智多。故以智治国,国之贼;不以智治国,国之福。知此两者,亦稽(jī)式。常知稽式,是谓玄德。玄德深矣,远矣,与物反矣,然后乃至大顺。

【第六十六章】

江海所以能为百谷王者,以其善下之,故能为百谷王。是以欲上民,必以言下之;欲先民,必以身后之。是以圣人处上而民不重,处前而民不害,是以天下乐推而不厌。以其不争,故天下莫能与之争。

【第六十七章】

天下皆谓我道大,似不肖(xiào)。夫唯大,故似不肖。若肖,久矣其细也夫。我有三宝,持而保之。一曰慈,二曰俭,三曰不敢为天下先。慈,故能勇;俭,故能广;不敢为天下先,故能成器长(zhǎng)。今舍慈且勇,舍俭且广,舍后且先,死矣!夫慈,以战则胜,以守则固,天将救之,以慈卫之。

【第六十八章】

善为士者不武,善战者不怒,善胜敌者不与,善用人者为之下。是谓不争之德,是谓用人之力,是谓配天古之极。

【第六十九章】

用兵有言,吾不敢为主而为客,不敢进寸而退尺。是谓行(xíng)无行(háng),攘(rǎng)无臂,扔无敌,执无兵。祸莫大于轻敌,轻敌几丧吾宝。故抗兵相加,哀者胜矣。

【第七十章】

吾言甚易知,甚易行,天下莫能知,莫能行。言有宗,事有君。夫唯无知,是以不我知。知我者希,则我者贵,是以圣人被(pī,“被”同“披”)褐怀玉。

【第七十一章】

知不知,上;不知知,病。夫唯病病,是以不病。圣人不病,以其病病,是以不病。

【第七十二章】

民不畏威,则大威至。无狎(xiá)其所居,无厌(yà,“厌”同“压”)其所生。夫唯不厌(yà,“厌”同“压”),是以不厌(yàn)。是以圣人自知,不自见(xiàn);自爱,不自贵。故去彼取此。

【第七十三章】

勇于敢则杀,勇于不敢则活。此两者,或利或害。天之所恶(wù),孰知其故?是以圣人犹难之。天之道,不争而善胜,不言而善应,不召而自来,繟(chǎn)然而善谋。天网恢恢,疏而不失。

【第七十四章】

民不畏死,奈何以死惧之!若使民常畏死,而为奇者,吾得执而杀之,孰敢?常有司杀者杀,夫代司杀者杀,是谓代大匠斫(zhuó)。夫代大匠斫者,希有不伤其手矣。

【第七十五章】

民之饥,以其上食税之多,是以饥。民之难治,以其上之有为,是以难治。民之轻死,以其求生之厚,是以轻死。夫唯无以生为者,是贤于贵生。

【第七十六章】

人之生也柔弱,其死也坚强。万物草木之生也柔脆,其死也枯槁。故坚强者死之徒,柔弱者生之徒。是以兵强则不胜,木强则兵。强大处下,柔弱处上。

【第七十七章】

天之道,其犹张弓与!高者抑之,下者举之;有余者损之,不足者补之。天之道,损有余而补不足。人之道则不然,损不足以奉有余。孰能有余以奉天下?唯有道者。是以圣人为而不恃,功成而不处,其不欲见(xiàn)贤。

【第七十八章】

天下莫柔弱于水,而攻坚强者莫之能胜,其无以易之。弱之胜强,柔之胜刚,天下莫不知,莫能行。是以圣人云,受国之垢,是谓社稷主;受国不祥,是为天下王。正言若反。

【第七十九章】

和大怨,必有余怨,安可以为善?是以圣人执左契,而不责于人。有德司契,无德司彻。天道无亲,常与善人。

【第八十章】

小国寡民,使有什伯(bǎi)之器而不用,使民重(zhòng)死而不远徙(xí)。虽有舟舆,无所乘之;虽有甲兵,无所陈之;使人复结绳而用之。甘其食,美其服,安其居,乐其俗。邻国相望,鸡犬之声相闻,民至老死不相往来。

【第八十一章】

信言不美,美言不信;善者不辩,辩者不善;知(zhì)者不博,博者不知(zhì)。圣人不积,既以为人,己愈有;既以与人,己愈多。天之道,利而不害。圣人之道,为而不争。