Java基本语法
2017-03-09 14:57:56 13 举报
AI智能生成
Java是一种面向对象的编程语言,具有简单性、可移植性和安全性三大特点。它的基本语法包括数据类型、运算符、控制语句和类等。其中,数据类型有整型、浮点型、字符型和布尔型等;运算符有算术运算符、关系运算符、逻辑运算符和位运算符等;控制语句有条件语句和循环语句等;类是Java程序的基本组成单位,包括属性和方法。在编写Java程序时,需要遵循一定的命名规则和代码格式规范,以确保程序的可读性和可维护性。
作者其他创作
大纲/内容
JAVA基本语法<br>
程序:
对一系列动作执行过程的描述!<br>
介绍<br>
JAVAEE企业版<br>
提供了企业级应用开发的完整解决方案<br>很多的网站都是采用Java EE技术开发
JAVASE标准版<br>
Java技术的基础和核心<br>主要用于开发桌面应用程序<br>
JAVAME小型版<br>
JDK,JRE,JVM的关系<br>
JDK:JAVA开发工具包<br>
JRE:JAVA运行环境<br>
JVM:JAVA虚拟机<br>
JDK安装目录<br>
bin:存放编译运行JAVA程序可执行文件<br>
lib:存放JAVA类库文件<br>
demo:存放演示文件<br>
jre:存放JAVA运行环境文件<br>
include:供C语言使用的文件<br>
编写,编译,运行<br>
DOS命令<br>
D:进入D盘<br>
cd 目录:进入文件夹<br>
cd\ 返回最上级目录<br>
cls:清屏<br>
exit:退出<br>
开发工具(IDE)<br>
Eclipse<br>MyEclipse<br>Notepad++<br>
Eclipse快捷键<br>
alt+?:自动补全代码或者提示代码<br>
Ctrl+1:显示错误<br>
Ctrl+Shift+f:格式化代码<br>
Shift+enter:在当前行上下创建空白行<br>
alt+↑↓:上下行交换<br>
Ctrl+m:当前编辑页面窗口最大化<br>
Ctrl+/单行注释<br>
Ctrl+Shift+/多行注释<br>
Ctrl+d删除当前行<br>
Ctrl+z后退一步 <br>
Ctrl+Shift+x/y英文切换大小写<br>
命名
命名规范<br>
只能使用数字,字母,下划线,美元符号<br>
数字不可以作为开头<br>
命名不可以是关键字<br>
区分大小写,没有长度限制<br>
命名方法<br>
大驼峰命名法:HelloWorld<br>
小驼峰命名法:helloWorld<br>
匈牙利命名法:hello_world<br>
注释
//单行注释<br>
/*多行注释*/<br>
/**文档注释*/<br>
转义符<br>
\n换行<br>
\t水平制表符<br>
\\表示斜杠<br>
\‘单引号\"双引号’<br>
选择结构<br>
if(){<br>}else(){<br>}<br>
处理简单的条件分支情况
当if下面只有一行语句的时候使用<br>if()<br> System.out.println(" ");<br>
直接结束,之后再执行代码块<br>if();{ }
多重if<br>
if(){<br>}else if(){<br>}else{}<br>
处理复杂的条件分支情况
嵌套if<br>
if(){<br> if(){}else{}<br>}else{}<br>
用于较为复杂的流程控制
switch
Switch(){<br> case 1:break;<br> default:break;<br>}<br>
必须写break跳出,否走会自动先下运行程序,直至break;<br>多重分支并且条件判断是等值判断的情况<br>
default:用来处理剩余<br>
<span style="font-family:Wawati SC"> JDK1.7之前Switch表达式只能是<span style="font-family: 'Wawati SC';"> byte,int,char,short,JDK1.5之后可以包含枚举,JDK1.7之后可以包含String;</span></span>
.equals()<br>
<span style="font-family: 'Wawati SC';"> ==是判断内存地址是否相等,equals是判断值是否相等</span>
数组<br>
<span style="font-family:Wawati SC"> 数组是多个相同类型数据的组合(存储同一种数据类型的容器),实现对这些数据的统一管理。数组中每个数据称为数组的一个元素。</span><span style="font-family:Wawati SC"> 数组对应在内存中一段连续空间。(<span style="color: rgb(255, 0, 0);">同一个数组中的元素必须是同一类型</span>)</span><span style="font-family:Wawati SC"></span>
数组的基本元素<br>
标识符:数组的名字<br>数组元素:向数组中存放的数据<br>元素下标(索引):对数组元素进行编号,从0开始,数组中的每个元素都可以通过下标来访问<br>元素类型:数组元素的数据类型<br>new:申请一个空间<br>
定义数组的方法<br>
例子:int[] a = {1,2,3,4,5};<br> double b[] = {1.1,1.2,1.3};<br> int[] c = new int[3];//数组长度为三<br> String[] d = new String{"1","2","3"};<br>
访问数组成员的方法:<br> a[0] = "访问数组第1个元素"<br> a[1] = "访问数组第2个元素"<br> a[i] = "访问数组第i个元素"
.length方法,获得数组长度<br>
int(数据类型)[](表示数组)= new(申请一个空间) int[长度];<br>
数组下标越界异常:ArrayIndexOutOfBoundsException<br>
空指针异常:NullPointerException<br>
数组的常用方法<br>
数组升序排序<br>
使用java.util.Arrays类<br>Arrays类可以提供操作数组的方法<br>
.sort()方法:对数组进行升序排列<br>
例子:<br>int[] scores = {1,50,5,6,85,99};<br>Arrays.sort(scores);<br>for(int i = 0;i<scores.length;i++){<br> System.out.print(scores[i]);<br>}<br>
数组逆向排序<br>
ArrayUtils.reverse(intArray);逆向排序<br>
例子:<br>int[] intArray = { 1, 2, 3, 4, 5 }; <br>ArrayUtils.reverse(intArray); <br>System.out.println(Arrays.toString(intArray));
检查一个数组是否包含某个值
例子:<br>String[] stringArray = { "a", "b", "c", "d", "e" }; <br>boolean b = Arrays.asList(stringArray).contains("a"); <br>System.out.println(b);
输出一个数组<br>
例子:<br>int[] intArray = { 1, 2, 3, 4, 5 }; <br>String intArrayString = Arrays.toString(intArray);
例子:<br>String j = StringUtils.join(new String[] { "a", "b", "c" }, ", ");
链接两个数组<br>
例子:<br>int[] intArray = { 1, 2, 3, 4, 5 }; <br> int[] intArray2 = { 6, 7, 8, 9, 10 }; <br> int[] combinedIntArray = ArrayUtils.addAll(intArray, intArray2);
数组增加减少长度(复制数组)<br>
例子:<br>animal22 = Arrays.copyOf(animal22, animal2_number + 1);//数组长度+1<br>
数组元素默认值<br>
byte,short,int,long :0<br>float,double: 0.0<br>char: "\u0000"<br>boolean:false<br>引用数据类型:null
遍历数组<br>
for循环<br>
例子:<br>int[] scores = {1,2,3,4,5};<br>for(int i = 0; i < scores.length;i++){<br> System.out.println(scores[i]);<br>}<br>
增强for循环(foreach)<br>
例子:<br>int[] scores = {1,2,3,4,5};<br>for(int a ; scores){<br> System.out.println(a);<br>}
多维数组<br>
二维数组<br>
int[][] scores = new int[3][3];<br>
二维数组的遍历<br>
例子: <br> int[][] array = new int[][] { { 12, 23, 34, 45, 56 }, { 11, 22, 33, 44, 55, 66, 77 }, { 10, 21, 32 } };<br> int num;<br> for (int i = 0; i < array.length; i++) {<br> String str = (i + 1) + "班";<br> num = 0;<br> for (int j = 0; j < array[i].length; j++) {<br> num += array[i][j];<br> }<br> System.out.println(str + "总成绩:" + num);<br> }
数据类型和运算符<br>
48个关键字
abstract - boolean - break - byte - case - catch - char - class - continue - default - do - double - else - extends - false - final - finally - float -for - if - implements -import - instanceof -int - interface - long - native - new<br>-null - package - private - protected - public -return - short - static - super - switch -synchronized - this - throw -<br>throws - transient - try - true - void - volatile - while
基本数据类型<br>
数值型<br>
整型<br>
byte(1字节8位)
short(2字节16位)
int(4字节32位)
long(8字节64位)
浮点型<br>
float(4字节32位浮点数)后面+f<br>
double(8字节64位浮点数)<br>
double不能进行特别精确的小数相加减,如果出现这样的问题,我们可以用乘法将他变成int类型操作<br>
字符型<br>
char(<span style="font-family: 'Wawati SC';">2字节16位Unicode字符</span>)
布尔型<br>
boolean(1字节8位)<br>
true
false
默认值
引用数据类型<br>
类,数组,接口<br>
String字符串<br>
enum枚举类型<br>
变量(其值可以改变的量,用来存储临时数据的)与常量(其值固定不变的量)<br>
变量的定义<br>
例子:int a = 1;<br>
常量的定义<br>
例子:final boolean flag = true;<br>
自动转换与强制转换<br>
自动转换:将低级别的类型赋予高级别的类型。<br>
强制转换:将高级别的类型赋予低级别的类型。<br>
例子:double d = 2.5; int a = (int) d;
运算符
赋值运算符:=,+=,-=,*=,/=,%=;
算数运算符:+,-,*,/,%(取余),++(自增),--(自减);<br>
i++先取值再自增,++i先自增再取值
%,例子:-8%5=-1(符号跟被除数)<br> 8%10=8<br>
关系运算符:==,!=,>,<,>=,<=;
<span style="font-family: 'Wawati SC'; font-size: 15px; line-height: 1.6;">逻辑运算符:&(逻辑与)&&(短路与),|(逻辑或)||(短路或),^(逻辑异或:两个操作相同结果为false,不同为true),!(逻辑反);</span>
短路与,短路或,当第一条件已经判断成功,则不运行第二条件(效率更高)<br>
<span style="font-family: 'Wawati SC'; font-size: 15px; line-height: 1.6;">位运算符:&,|,^,~,<<,>>,>>>,<<<;</span>
例子:不引用第三个变量进行两变量交换<br> int a = 0;int b = 3;<br> a = a^b;b = a^b;a = a^b;<br>
随机数<br>
Math.random()
例子:int a = (int)(Math.random()*10)<br>
获得0-9随机数<br>
例子:int a = (int)(Math.random()*37)<br>
获得0-36随机数<br>
例子:int a = (int)(Math.random()*37+1)<br>
获得1-37随机数<br>
Scanner对象<br>
使用Scanner的步骤:<br>import java.util.Scanner;//导入Scanner类<br>Scanner input = new Scanner(System.in);//创建Scanner对象<br>int a = input.nextInt();<br>double b = input.nextDouble();<br>String c = input.next();<br>
.charAt()截取字符串对应下标字符<br>
例子:char flag = input.next().charAt(1);
当下标为1时,截取的是字符串中第二个字符<br>
设置断点<br>
运行方式:设置断点,Debug单步执行,观察变量<br>
循环结构<br>
循环方式<br>
while循环<br>
先判断循环条件,为真执行循环体,为假跳出循环语句。
例子:<br>while(循环条件){循环体}
do-while循环<br>
先执行循环体,再判断循环条件,为真继续执行循环体,为假跳出循环。(循环体至少执行一次)。
例子:<br>do{循环体}while(循环条件);<br>
for循环<br>
<span style="font-family: 'Wawati SC';">先定义变量初始值,再判断循环条件,为真则执行循环体,<span style="font-family: 'Wawati SC'; white-space: normal;">修改循环变量的值,</span>为假则终止循环。for循环用于以知循环次数的循环。</span>
例子:<br>for(int i = 0,j = 0, g = 0;i < 15;i++){}<br>
for与while循环的区别:<br>
for初始化的变量在,循环结束后则不可使用<br>while,由于变量定义在while以外,这个变量在循环结束后还可以使用<br>
知道循环次数建议使用for<br>不知道循环范围建议使用while<br>
循环嵌套<br>
外层循环一次,内层循环一遍<br>
跳转<br>
break
<span style="font-family: 'Wawati SC';">只会出现在switch和循环语句中没有其他使用场合,终止当前循环语句,然后执行循环后面的语句。</span>
continue
<span style="font-family: 'Wawati SC';">只会出现在循环语句中,强制当前循环语句提前返回执行本次循环剩余的代码。</span>
return
<span style="font-family: 'Wawati SC';">结束当前方法的执行并退出,返回调用该方法的语句处。</span>
倒三角的做法1,3,5,7,9方法:(2*i-1)<br>
记住number最后设置或(number-2)*2-1<br>
自由主题
0 条评论
下一页
为你推荐
查看更多