和以往印象不同的Java
Java编程概述
- 一个Java源文件至多有一个public类,但是可以有很多class的定义
- public static void main (String args[])
public 代表公共的,static 为静态的,void 无返回值,main()是Java应用程序的入口,String[ ]参数为字符串类数组,args是一个普通参数,可以任意改名
- System.out.println()中println 可以理解为print line 在一行上输出
- Java中注释/** */可生成html格式的API文档
变量、标识符、运算符
- 变量必须先声明后使用
- Boolean类型的true和false不能用双引号引起来,如果引起来就变成string类型了
- Java采用16位Unicode编码格式,可以表示世界上所有的语言,范围为”\u000000~\uFFFFFF,其中\u代表采用的是Unicode编码格式,它的前256个与ASCII码中的字符完全符合
- Java中允许将转义字符 ‘\’后的字符转变为其他的含义
例:注释应输入’\\’,而非一个’\’转义字符
- Flaot类型数值后加f, long类型数值后加l, 十六进制数值前加0x,八进制数前加0
- 浮点数两种表示法:1)带小数点的数 2)用科学计数法表示
- 0/正数=正无穷;0/0或者对一个负数开方会得到NaN(Not a Number)
- 变量名、标识符只能以字母、下划线 ‘_’,和美元符号’$’ 开头,切忌关键字,数字和空格的出现,区分大小写
- 可以对浮点型数字取模 16.3%4=0.3
- 接收数据用 input.nextlnt();
- 递增/递减操作只针对变量不针对数字,下面的表示是错误的: 6++,byte、short、char类型会自动转换为int型(其他运算也是),其他数据类型不变
- &&叫做短路与,意义为如果短路与前的变量为0,则不再运算短路与后面的变量;
- ||叫做短路或,意义为如果短路或前的变量为1,则不再运算短路或后面的变量
- ^ 叫做异或,意义为只有两者不同才为1,因此仅允许有一个1
- &两侧都做判断,都为1则 true
- |两侧都做判断,有一个为1则true
- ~单目运算符,对后面的数字取反
- E?F:G; E的条件对吗?对则执行F,不对执行G
- 字符串连接运算符‘+’
字符串+字符串=字符串;数字+字符串=字符串;数字+数字=数字
- a<<b,将二进制形式的a逐位左移b位,最低空出的b位补0
- a>>b,将二进制形式的a逐位右移b位,最高位空出的b位补原来最高位的符合
- a>>>b,将二进制形式的a逐位右移b位,最高位空出的b位补0
- 对于int型以及低于int型的数,先对32取模,得到的结果才为真正移位的数,对于long型对64取模
Java程序控制语句
- 比较数据用 x.equals()
- Switch后的default和case顺序不影响结果,如果没有条件与switch后的条件符合,则直接退出switch,执行switch块后的第一条语句
数组和字符串操作
- Int[] a仅仅是声明了一个数组变量,并没有指向任何有效地内存空间,所以不能指定数组的长度
- 数组的长度可以表示为:数组名.length 例:a.length
- 一个数组初始化成功代表着:1)创建一个数组对象 2)在内存中给数组分配了空间 3)为数组中的元素初始化了一个默认值
- 如 int a[]={1,2,3,4} 则不要规定数组的长度,数组的长度由花括号中的元素决定
- 排序可以采用冒泡排序和sort方法(升序, Array.sort(数组名) )
- 数组的拷贝 1)直接赋值,例:a=b 2)利用arraycopy方法(System.arraycopy(复制谁,从第几个下标开始,复制给谁,从第几个下标开始,总共的个数)
- 多维数组至少规定一个最左边的长度,如果指定其中一个一维长度,则此一维左侧的大小全部要规定
- String.length();获取字符串长度
- 字符串的比较 :
i. 字符串.equals(字符串)
ii.
和以往印象不同的Java的更多相关文章
- Java注解(Annotation):请不要小看我!
Java注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释的代码本身的一部分.注解对于代码的运行效果没有直接影响. 网络上对注解的解释过于严肃.刻板,这并不是我喜欢的风格.尽管这样的 ...
- 拼多多、饿了么、蚂蚁金服Java面试题大集合
自己当初找工作时参加过众多一线互联网公司的Java研发面试,这段时间处于寒冬,然而前几天跳槽找工作,两天面了3家,已经拿了两个offer,觉得可以和大家分享下: 下面为拼多多.饿了么.蚂蚁金服.哈啰出 ...
- java数据结构之链表(java核心卷Ⅰ读书笔记)
1.链表 数组和ArrayList的一个重大缺陷就是:从中间位置删除一个元素要付出很大的代价,因为在这个元素删除之后,所有的元素都要向前端移动,在中间的某个位置插入一个元素也是这个原因. (小感悟:s ...
- JAVA内存模型及垃圾回收自我总结
本文为原创,根据<深入理解java虚拟机>和自己的一些理解进行整理,单纯和看其他人的博客感觉不如自己一点点的画和记录来的印象深刻. JAVA内存模型: 上图中:局部变量表所需的内存在编译期 ...
- java基础学习总结——开篇
java是我学习的第一门编程语言,当初学习java基础的时候下了不少功夫,趁着这段时间找工作之际,好好整理一下以前学习java基础时记录的笔记,当作是对java基础学习的一个总结吧,将每一个java的 ...
- Knowledge Point 20180506 深究Java的跨平台特性
本章主题:从骨子里看Java的跨平台;本文内容部分摘自https://www.cnblogs.com/roger-yu/p/5827452.html 有过基础Java知识的开发人员都知道Java是跨平 ...
- 初探Java字符串
转载: 初探Java字符串 String印象 String是java中的无处不在的类,使用也很简单.初学java,就已经有字符串是不可变的盖棺定论,解释通常是:它是final的. 不过,String是 ...
- java与java web数组括号的不同
由于之前学JAVA SE数组时习惯了数组括号的写法,到了Web这里写了有点不太习惯了,赶快写篇博客加深一下印象哈 一. java和java web中的数组的不同 java: int[] arr = n ...
- Java(四)输出和输入函数
介绍一下Java里简单常用的输入输出方法. Java的输出函数很简单,直接调用System类的out对象的print函数即可. 代码: System.out.print(a);//输出变量a的值 Sy ...
随机推荐
- sharepoint webpart
SharePoint开发中,不仅仅是WebPart,我们都经常会使用的几个关键位置,如下: GAC: C:\Windows\assembly,也就是部署的位置: ISAPI位置,SharePoint ...
- 3.springMVC+spring+Mybatis整合Demo(单表的增删该查,这里主要是贴代码,不多解释了)
前面给大家讲了整合的思路和整合的过程,在这里就不在提了,直接把springMVC+spring+Mybatis整合的实例代码(单表的增删改查)贴给大家: 首先是目录结构: 仔细看看这个目录结构:我不详 ...
- Android_Fragment(碎片)知识点讲解
今天我们来了解下Android 中的fragment(碎片)这个东西. Fragment 从英文翻译而言是碎片,片段的意思.那么这个东西是什么,在Android 中有什么用呢? 一.概念 Fragme ...
- VBA 小知识
1. 循环 Dim i As Integer 'body Next 'body Wend 2. 键值数据结构 'create dictionary object Set dictMembers = C ...
- nullcon HackIM 2016 -- Programming Question 5
Dont blink your Eyes, you might miss it. But the fatigue and exhaustion rules out any logic, any wil ...
- bat调用bat的一个巨坑
[一个巨坑] a.bat的内容:echo 1b.batecho 2执行结果:运行a.bat时,输出1,然后调用b.bat, 但是 echo 2 显示不出来. bat怎么调用bat文件并返回? 例如主文 ...
- excel中的TEXT函数
TEXT 函数可将数值转换为文本,并可使用户通过使用特殊格式字符串来指定显示格式. TEXT(value, format_text) value 必需.数值.计算结果为数值的公式,或对包含数值的单元 ...
- 试一下SVG
用鼠标点击那个圆形试试 function changeCircle() { var c = document.getElementById("mycircle"); c.setAt ...
- java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
在ViewPager中,用Fragment显示页面时,报错: java.lang.IllegalStateException: The specified child already has a pa ...
- C#中线程对控件的访问
Control类提供了一个Invoke方法来给子线程访问主线程的控件,它的原型是酱紫的: object.Control.Invoke(Delegate method); object.Control. ...