【程序设计】浅析编程语言的区间为何常是左闭右开
生活随笔
收集整理的這篇文章主要介紹了
【程序设计】浅析编程语言的区间为何常是左闭右开
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
高中大家都學過區間——閉區間、開區間、左閉右開區間、左開右閉區間。
區間在Java里也有體現。比如用解析字符串子串的形式來提取身份證的信息,提取子串就相當于截取一個區間。
用一門語言,用的久應該會對它的一些特點比較熟知。隨著我對Java的學習,慢慢發現很多Java的區間都是左閉右開的,即取左不取右(當然了,取索引的話是離散的數值)。
舉個例子,比如長度14的字符串,你取的是(13,14),得到第13索引即第14位(索引從0開始)。但是14并不越界,因為根本取不到!
在jshell里輸入String a = "abcdefghijklmn";,顯示a ==> "abcdefghijklmn",再輸入a.substring(2, 3);,顯示$2 ==> "c",再輸入a.substring(2, 4);,顯示$3 ==> "cd"。
其實不僅僅是Java,在C語言、Python、Swift等很多流行的編程語言中都有類似的體現(只不過并不是所有的時候都是而已,所謂左閉右開只能說是比較普遍的規律吧)
那為什么左閉右開受到青睞呢?
我查了一些資料,加上自己淺薄的感悟,略作分享。
先舉一些例子,直觀地感受一下吧:
先說開區間吧,開區間真的不是很直觀。明明是索引1,非得是(0,2);一旦是索引0,就需要面臨(-
總結
以上是生活随笔為你收集整理的【程序设计】浅析编程语言的区间为何常是左闭右开的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Java】最基本的命令行登录程序Dem
- 下一篇: 离散结构:图论进阶