关于Java中语句符号及格式的理解
关于Java中语句符号及格式的理解
这篇文章是撰写的第一篇文章,在此作一下博主是一名在读的工科研究生,种种原因,研二开始决定转行从事程序员工作。开始的自学之路并不算非常顺畅,也走了一点弯路,但一直都坚持了下来,慢慢地,在学习的过程中渐入佳境,找到了学习的兴趣和成就感。开通这个博客,既有出于在技术层面上不断追求的希冀,也希望记录自己在学习路程上的生活点滴,和各位同仁共勉。
谈一谈对于流程控制语句中的格式的理解,在我看来对于一种编程语言,其语言的规范格式其实都是一样的,无论你是什么样的语法句子,其”本质”是一样:核心就是为了方便人更好更快地写程序(也就是符合人的逻辑思维)。为了达到这个核心目的,不同的程序设计者根据语言的使用场景,特点具体地创造了各种语言:C、C++、C#、Java等,但万变不离其宗,只要你掌握了这些规则,站在作者的视角审视这些东西,你会发现所有的设计是多么的”人性化”,其实语言本就是为人设计的。
首先谈一谈大前提——JAVA语句符号的作用,它们都是为了将编程语言句子以某种方式 隔开,让句子更加通顺,易懂(对于机器和你都是这样)。就像写文章一样,我们要句号来表示一个句子的解释,用逗号来表示同一句话中的停顿(否则有的句子太长了,人读了多累啊),用感叹号表示强烈的情感等等。符号的存在就是为了句子的通畅性和可读性。以下是一些关于JAVA中流程语句规则具体的例子的理解:
① {}
{}是JAVA非常重要的一种符号,{}主要是为了界定一定的范围。{语句a;语句b;语句c;}内可以写若干条语句a、b、c等,可以这样理解,{}内是程序的主体语句(或者称为“块”),块定义了变量的作用域。它是程序具体执行的一个个步骤,是算法实现的具体体现。此外,{}中可以嵌套{}。
② ()
小括号同可以看成是一种另外形式的{},其本质也是为了界定范围,()内可以是条件(boolean表达式),此时往往是while,for和do while循环和switch语句。
③ ;
分号用来表示语句的结束(你可以理解成我们写作文中的句号,值得注意的是,JAVA很少用到逗号,你可以理解我们大部分情况只需要不断地写一个又一个的句号句)。
④ ,
逗号 JAVA中几乎不太使用逗号,你可以在方法的定义格式中的()内用于隔开不同的参数名,数组的不同元素间也用逗号来隔开。
总结:其余的符号如运算符不在此处讨论的范围内,这里只想讨论关于上述相关的语句符号。 ;号用来表示句子的结束,{}和()都是限定范围,二者的区别不过是具体的使用习惯(环境)不同,没有本质的区别。 ,用的情况很少,只需特别记忆即可。
PS:另附关于刘意老师讲的一个规则的理解:有{}中的则{前面一般不加; 同理有;后面也不加{。我的理解是:比如在for循环中,我们知道for循环的格式为
For (初始化语句;判断条件语句;控制条件语句) {循环体语句;}
{}内为循环体语句,当循环体语句为一句时可以省略{}。此时{}前不能加; 可以这些理解,当你在{}前加上;时,系统会默认;前为一个循环体语句(只不过是空白内容的句子),而此后的{}又表示多个循环体语句,二者产生矛盾,产生错误。
关于Java中语句符号及格式的理解的更多相关文章
- Java中常用的设计模式代码与理解
Java中常用的设计模式代码与理解 一.单例模式 1.饿汉式 (太饿了,类加载的时候就创建实例) /** * 饿汉式单例模式 */ public class HungrySingleInstance ...
- Java中String与Date格式之间的转换
转自:https://blog.csdn.net/angus_17/article/details/7656631 经常遇到string和date之间的转换,把相关的内容总结在这里吧: 1.strin ...
- java中无符号类型的处理
在Java中,不存在Unsigned无符号数据类型,但可以轻而易举的完成Unsigned转换. 方案一:如果在Java中进行流(Stream)数据处理,可以用DataInputStream类对Stre ...
- 【问题记录】MySQL中时间戳转日期格式和Java中时间戳转日期格式偶尔不一致
背景: MySQL的某个字段存放着一些时间戳格式的时间. 问题描述: Java程序将MySQL中的时间戳字段取出来,在Java程序中转成yyyy-MM-dd HH:mm:ss格式的时候,偶尔会出现转化 ...
- Java中关于时间日期格式保存到mysql的问题
首先在设置数据库的时间日期字段的时候要先确定好采用何种类型,DATETIME. TIMESTAMP.DATE.TIME.YEAR. 其中datetime.time用的比较多,对应java中生成的poj ...
- java中的泛型的使用与理解
什么是泛型? 泛型是程序设计语言的一种特性.允许程序员在强类型程序设计语言中编写 体验泛型代码时定义一些可变部份,那些部份在使用前必须作出指明.各种程序设计语言和其编译器.运行环境对泛型的支持均不一样 ...
- java中的异常和处理详细理解
异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如果你用System.ou ...
- Java中关于WeakReference和WeakHashMap的理解
新美大的10月11日的笔试中有一道选择题,让选择函数返回结果,代码如下: private static String test(){ String a = new String("a&quo ...
- Java中char和String 的深入理解 - 字符编码
开篇 https://blog.csdn.net/weixin_37703598/article/details/80679376 我们并不是在写代码,我们只是将自己的思想通过代码表达出来! 1 将思 ...
随机推荐
- XPath高级用法(冰山一角)
运算符+内置函数 使用XPath选择元素时,使用运算符+内置函数来进行筛选: .//div[contains(@class,"ec_desc") or contains(@clas ...
- C++命令行画心形<转载>
#include <stdio.h> int main() { for (float y = 1.5f; y > -1.5f; y -= 0.1f) { for (float x = ...
- jzoj5875
這玩意嚴格意義上算是水法(因為可能會被卡) 題目中,如果按照一般的bfs來搜索,那麼有平方級邊,會tle 如果按照補邊的線性來搜索,那麼時間複雜度變為min(k*k,m)*n,視n,m同階,則時間複雜 ...
- python 爬爬爬 基本函数~
https://docs.python.org/2/howto/urllib2.html#data http://zhuoqiang.me/python-urllib2-usage.html #cod ...
- $_SERVER[]数组解析
$_SERVER['PHP_SELF'] 将会得到 /test.php/foo.bar 这个结果.__FILE__ 常量包含当前(例如包含)文件的绝对路径和文件名. 如果 PHP 以命令行方式运行,该 ...
- 四,mysql优化——sql语句优化之索引二
1,在什么列适合添加索引 (1)较频繁的作为查询条件字段应该添加索引 select * from emp where empid = 2; (2)唯一性太差的字段不适合添加索引,即时频繁作为查询条件. ...
- jvm内存结构(一)(结构总览)
jvm内存结构:<Java虚拟机原理图解>3.JVM运行时数据区 程序计数器: ,是执行的字节码的行号指示器,记录的是正在执行的虚拟机字节码指令的地址. ,每个线程都有独立计数器,互不干扰 ...
- 酷!美国国家安全局(NSA)开源了逆向工程工具 Ghidra
简评:2019 RSA 大会期间,NSA 正式发布了这个工具.免费 + 开源,真的有吸引力,据说体验可以和 IDA 一较高下. Ghidra 是由美国国家安全局(NSA)研究理事会创建和维护的软件逆向 ...
- 结合 RunLoop 和 Instrument 定位卡顿
iOS 应用,丝般顺滑的理想情况就是 60FPS (对于 iPad Pro 是 240FPS),即在 16ms 之内完成一次渲染.如果找到在每次渲染花费了多久,究竟做了什么事情,那么就可以进行针对性的 ...
- OC basic
不能在栈上分配对象 //Interface type cannot be statically allocated NSString stackString; 因为对象所占内存总是分配在"堆 ...