前段时间听朋友说程序员要不断扩充自己的知识库,才能跟上时代的步伐,通过博客和论坛使自己提升是一个很好的手段,我们不仅要看别人的博客,同时把自己的所见,所知,所感所想与别人一起分享也是很不错的.好了废话不多说,先整理一下java的基础知识:
首先java有很多集成工具:eclipse,myeclipse(收费软件),idea等;初学者不建议使用idea,可以尝试使用eclipse,这是一款很好用的软件,对一些刚接触java的人来说非常友好.
定义格式
数据类型 变量名 = 初始化值;
数据类型 变量名;
变量名 = 初始化值;
变量在使用之前 必须有值
变量是在内存中的一小块区域
数据类型: 基本数据类型(四类八种);引用数据类型(类/接口/数组)
隐式转换 小的转大的 大的数据类型可以直接接受小的数据类型
强制转换 大的转小的 小的数据类型 变量名 = (小的数据类型)大的数据类型变量;
注释:单行注释://
多行注释:/**/
标识符:命名方式(类型较多,在此不再详说)
--放在操作数的后面 先参与运算 再自加
Scanner:jdk提供了,但我们需要三步
a.导包:import java.util.Scanner(java.util.*)
b.创建Scanner对象 Scanner sc = new Scanner();
c.然后可以调用sc.nextInt();sc.nextLine();sc.next();
a.顺序结构语句 从上至下
b.选择结构(非常常用)
1.if语句 三种格式
if(){
}
2.if(){
}else{
}
3.if(){
}else if(){
}...
else{
}
c.循环结构(1和2常用)
1.for(初始化表达式;判断表达式;步进表达式){
循环体语句;
}
2.while(判断表达式){
循环体语句;
步进表达式;
}
3.do..while..
循环结构中 break: 中断语句
只要遇到它 语句中断 停止
switch 循环
continue 只跳出本次循环,继续执行循环语句
4.switch语句(常见:遥控器)
switch(表达式){
case 值1 :
语句;
break;
...
..
default:
..
break;
}
特点:长度一定,有顺序,有索引
定义方式:
数据类型[] 数组名 = new 数据类型[数组长度];
数据类型[] 数组名 = new 数据类型[]{元素1,元素2...}
简化形式 数据类型[] 数组名 ={元素1,元素2...}
数组遍历:for循环(遍历是很常见的操作,可以获取数组中的每个数据)
数组操作常见两个异常:数组空指针异常;数值索引越界异常;
内存:
栈
存放局部变量
方法运行要入栈 ---压栈
方法执行完毕 要弹栈
先进后出
堆
1:存放new出来
2:new就有地址
3:默认初始值
方法区 结构复杂 了解 面向对象
本地方法区 跟系统相关的
寄存器 CPU
首先java有很多集成工具:eclipse,myeclipse(收费软件),idea等;初学者不建议使用idea,可以尝试使用eclipse,这是一款很好用的软件,对一些刚接触java的人来说非常友好.
一:java中的数据名称以及种类
a.常量: 在程序中 执行过程中其值不发生改变的量
主要有以下几点:字符串常量 字符常量 整数常量 小数常量 布尔型常量 空常量b.变量:
在程序执行过程中 在一定范围内可以发生改变的量定义格式
数据类型 变量名 = 初始化值;
数据类型 变量名;
变量名 = 初始化值;
变量在使用之前 必须有值
变量是在内存中的一小块区域
数据类型: 基本数据类型(四类八种);引用数据类型(类/接口/数组)
隐式转换 小的转大的 大的数据类型可以直接接受小的数据类型
强制转换 大的转小的 小的数据类型 变量名 = (小的数据类型)大的数据类型变量;
注释:单行注释://
多行注释:/**/
标识符:命名方式(类型较多,在此不再详说)
二:运算符在java中很常见,与数学中的类似,但也不全相同
a.算数运算符(+,-,*,/),另外还有两个特殊的:(% 取余 取模 )
b.++/--运算符,这个在java中非常常见,也很重要
++放在操作数的前面 先自加 再参与运算--放在操作数的后面 先参与运算 再自加
c.赋值运算符
+= -= %= 左边跟右边进行相应的运算 赋值给左边
d.关系运算符
== !=
e.逻辑运算符
& 有false则false |有true则true !非false则true 非true则false ^ 相同为false 不同为true
f.三元运算符
(布尔类型表达式)? 表达式1 : 表达式2;
三:Scanner键盘录入:
程序中我们不仅可以自己定义数据,也可以通过键盘录入的方式,这时候我们可以使用Scanner来实现Scanner:jdk提供了,但我们需要三步
a.导包:import java.util.Scanner(java.util.*)
b.创建Scanner对象 Scanner sc = new Scanner();
c.然后可以调用sc.nextInt();sc.nextLine();sc.next();
四:java程序的执行顺序,jvm虚拟机,一般将main方法作为程序的入口:
执行顺序有:a.顺序结构语句 从上至下
b.选择结构(非常常用)
1.if语句 三种格式
if(){
}
2.if(){
}else{
}
3.if(){
}else if(){
}...
else{
}
c.循环结构(1和2常用)
1.for(初始化表达式;判断表达式;步进表达式){
循环体语句;
}
2.while(判断表达式){
循环体语句;
步进表达式;
}
3.do..while..
循环结构中 break: 中断语句
只要遇到它 语句中断 停止
switch 循环
continue 只跳出本次循环,继续执行循环语句
4.switch语句(常见:遥控器)
switch(表达式){
case 值1 :
语句;
break;
...
..
default:
..
break;
}
五:数组:
存储同一种数据类型多个元素的容器
可以存放基本数据类型,也可以存放引用数据类型特点:长度一定,有顺序,有索引
定义方式:
数据类型[] 数组名 = new 数据类型[数组长度];
数据类型[] 数组名 = new 数据类型[]{元素1,元素2...}
简化形式 数据类型[] 数组名 ={元素1,元素2...}
数组遍历:for循环(遍历是很常见的操作,可以获取数组中的每个数据)
数组操作常见两个异常:数组空指针异常;数值索引越界异常;
内存:
栈
存放局部变量
方法运行要入栈 ---压栈
方法执行完毕 要弹栈
先进后出
堆
1:存放new出来
2:new就有地址
3:默认初始值
方法区 结构复杂 了解 面向对象
本地方法区 跟系统相关的
寄存器 CPU