《JAVA核心卷I》之Java基本程序结构
Java基本程序结构
1、类名是以大写字母开头的名词
代码能够执行的类,要有main函数,且声明必须是public
2、注释:
“//”,"/**/" 行注释
"/***/"可以自动生成文档
3、数据类型8种
4种整型:int(存储4字节) ,short(存储2字节),long(存储8字节),byte(1字节)
2种浮点型:float(存储4字节),double(存储8字节)
1种字符类型:char
2种boolean类型:boolean
4、变量,
在使用一个变量之前,一定要对其初始化,否则会报错
5、枚举
变量的取值只在一个有限的集合内。
6、字符串
任何一个java对象都能转换成字符串,这就是toString()是类方法。
编译器可以让字符串共享,只有字符常量是共享的。
不能修改字符串
字符串相等使用equals()方法,不要使用==比较字符串,是否是放在同一个位置
7、空串和null串
空串"" 判断方式 if(str.length()==0)或者if(str.equals(""))
Null 判断方式if(str==null)
检测非空和null 方式if(str!=null && str.length() !=0)
在一个null值上调用方法,会报空指针异常
8、构建字符串
由短字符串构建字符串,如果采用"+"的方式,效率比较低,每次连接都会构建一个新的String对象,耗时,浪费空间
StringBuilder 线程不安全,效率高拼接 StringBuilder sb = new StringbBuilder(); sb.append();
StringBuffer 线程安全
9、输入和输出
输入Scanner in = new Scanner(Paths.get("myfile.txt")); in.nextLine()
输出:System.out.printf("hello,%s",name);String.foramt("hello,%s",name);
PrintWriter out = new PrintWriter("myfile.txt");
11、逻辑运算
判断:if...else... switch...case
循环:for ,while,foreach
12、数组
存储同一类型的集合,一种数据结构
定义 int[] a;
Arrays工具类:展示数组数据(Arrays.toString(s))
复制数组(Arrays.copyOf(arr,length))
Arrays.sort(s) 优化的快速排序,对于大多数数据集合
多维数组:数组的数组
《JAVA核心卷I》之Java基本程序结构的更多相关文章
- 阿里架构师花近十年时间整理出来的Java核心知识pdf(Java岗)
由于细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容! 整理了一份Java核心知识点.覆盖了JVM.锁.并发.Java反射.Spring原理.微服务.Zooke ...
- java核心卷笔记--P48字符串3.6.5
一定不要使用 == 运算符检测两个字符串是否相等 ! 这个运算符只能够确定两个字串是否放置在同一个位置上 . 当然 , 如果字符串放置在同一个位置上 , 它们必然相等. 但是 ,完全有可能将内容相同的 ...
- Java核心卷笔记(一)
第三章Java基程序设计结构 1.注释 三种注释方式: // 注释单行 /* 内容 */ 注释单行 /** * 内容 */ 2. java 数据类型 Java数据类型可分为两种:基本数据类型和引用数据 ...
- Java 核心卷学习笔记(一)
Java基程序设计结构 1.注释 三种注释方式: // 注释单行 /* 内容 */ 注释单行 /** * 内容 */
- java数据结构之链表(java核心卷Ⅰ读书笔记)
1.链表 数组和ArrayList的一个重大缺陷就是:从中间位置删除一个元素要付出很大的代价,因为在这个元素删除之后,所有的元素都要向前端移动,在中间的某个位置插入一个元素也是这个原因. (小感悟:s ...
- java数据结构之HashSet和HashMap(java核心卷Ⅰ读书笔记)
增加 删除 remove方法,可以删除指定的一个元素. 查找 ********************* **************************** HashSet既不可以用 0 1 2 ...
- 深入Java核心 Java中多态的实现机制(1)
在疯狂java中,多态是这样解释的: 多态:相同类型的变量,调用同一个方法时,呈现出多中不同的行为特征, 这就是多态. 加上下面的解释:(多态四小类:强制的,重载的,参数的和包含的) 同时, 还用人这 ...
- 深入Java核心 Java内存分配原理精讲
深入Java核心 Java内存分配原理精讲 栈.堆.常量池虽同属Java内存分配时操作的区域,但其适用范围和功用却大不相同.本文将深入Java核心,详细讲解Java内存分配方面的知识. Java内存分 ...
- Java核心_内省
Java核心_内省 查看java的api,发现有一个包java.bean咦,这个包是干什么的呢,原来,它是用来操作JavaBean对象的! 一.内省操作①JavaBean:一种特殊的Java类无参构造 ...
随机推荐
- [poj] 2074 Line of Sight || 直线相交求交点
原题 给出一个房子(线段)的端点坐标,和一条路的两端坐标,给出一些障碍物(线段)的两端坐标.问在路上能看到完整房子的最大连续长度是多长. 将障碍物按左端点坐标排序,然后用房子的右端与障碍物的左端连线, ...
- babelrc配置
{ "presets": [ ["env", { // webapck2/3必须配置,放弃使用babel的模块化,使用webpack的模块化,webpack1不 ...
- MAC使用IDA PRO远程调试LINUX程序
1 背景 在学习Linux系统上的一些漏洞知识的时候,往往需要进行“实地测试”,但是在Linux系统上进行调试并不太方便,因为LINUX自带的GDB调试工具真的不太人性化,即使有GDBTUI之类的“伪 ...
- bzoj4059 [Cerc2012]Non-boring sequences
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4059 [题解] 考虑分治.定义过程solve(l,r)为判断全在[l,r]范围内的所有连续子 ...
- 【CF1023D】Array Restoration(构造,线段树)
题意:有一个长为n的序列,对其进行q次操作,第i次操作可以把连续的一段覆盖为i 现在给出操作后的序列,第i个数字为a[i],其中有一些为0的位置可以为任意值,要求构造任意一组合法的操作后的序列 无解输 ...
- [字符串] StartWith和EndWith效率比较低
之前无意中看到有人提到StartWith和EndWith效率比较低,今天恰好有用到这样的场景,于是写了个测试验证一下. 该示例仅在比较字符串首尾单个字符,用途有限. var str = "\ ...
- OpenGL入门学习(三)
http://developer.178.com/201103/94954704639.html 在第二课中,我们学习了如何绘制几何图形,但大家如果多写几个程序,就会发现其实还是有些郁闷之处.例如:点 ...
- 从串口驱动的移植看linux2.6内核中的驱动模型 platform device & platform driver【转】
转自:http://blog.csdn.net/bonnshore/article/details/7979705 写在前面的话: 博主新开了个人站点:你也可以在这里看到这篇文章,点击打开链接 本文是 ...
- mybatis之<trim prefix="" suffix="" suffixOverrides="" prefixOverrides=""></trim>的含义
转自:http://blog.csdn.net/qq_33054511/article/details/70490046 <trim prefix="" suffix=& ...
- python--optparse
import optparse op = optparse.OptionParser() op.add_option("--s", dest="server") ...