Java学习笔记-语句-函数-数组
来源:互联网 发布:通用电气知乎 编辑:程序博客网 时间:2024/06/06 07:38
-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
1.Java语言的基本组成:
1)关键字
定义数据类型的关键字:class、interface、int、byte、short、long、char、void、double、float、boolean
定义数据类型值的关键字:true、false、null
定义流程控制的关键字:if、else、switch、case、while、for、break、continue、return、do、default
2)标识符
在程序中自定义的一些名称称之为标识符。
表识符的规则:数字、特殊符号不可以开头,不可以使用关键字。Java中严格区分大小写,威力提高阅读性尽量定义有意义的标识符。
标识符的规范:包名全部小写:xxxyyyzzz , 类接口名 首字母大写:XxxYyy,变量名从第二个单词开始首字母大写:xxxYyy,常量全部大写XXXYYY
3)注释
单行注释:// 多行注释:/* */ 文档注释/** */
4)常量和变量
数据类型分类:
定义变量的示例:int x=3; double d=3.0d; float f = 2.3f; boolean = true;等等
强制转换:byte b=2; b =(byte)(b+2);2是int类型,运算结果会提升为int型,需要强转,否则编译器会报错。
5)运算符
+,-,*,/,%,++x(前自增),x++(后自增),\(转义字符),+=,*=,/=,-=,%=(a=a+3这个是两次运算,a+=3是一次赋值运算)
比较运算符:==,!=,<,>,<=,>=
逻辑运算符:&,|,^,!,&&,||
true & true = true;
true & false = false;
false & true = false;
false & false = false;
true | true = true;
true | false = true;
false | true = true;
false | false = false;
true ^ true = false;
true ^ false = true;
false ^ true = true;
false ^ false = false;
&和&&的特点:
&:无论左边是true是false。右边都运算。
&&:当左边为false时,右边不运算。
|:两边都参与运算。
||:当左边为true。右边不运算。
位运算符:
<<左移,>>右移,>>>无符号右移,&与运算,|或运算,^异或运算,~取反。
三元运算符:(条件表达式)?表达式1:表达式2;
6)语句
判断结构:
if语句:
if(条件表达式){执行语句} if(条件表达式){执行语句}else{执行语句} if(条件表达式){执行语句}else if(条件按表达式){执行语句}...else{执行语句}
选择结构:
switch语句:
switch(条件表达式){case1:执行语句;break;case2:执行语句;break;case3:执行语句;break;......case1:执行语句;break;}
循环结构:
while语句:
while(条件表达式){执行语句} do{执行语句} while(条件表达式) 两种格式的区别:do while 无论条件满足不满足都会先执行一次
for语句:
for(初始化表达式;循环条件表达式;循环后的操作表达式){执行语句;} for语句和while语句的区别:for语句定义的变量只在循环中有效,while语句使用的变量在循环结束后还可以使用。
break(跳出):用在选择结构和循环结构中,用于结束循环。
continue(继续):用在循环结构中,用于结束本次循环,执行下次循环。
7)函数
函数也称之为方法。
函数的格式:修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,.........){执行语句;return 返回值;}
函数的特点:函数可以将功能代码封装,便与复用该功能,提高了代码的复用性。没有返回值是用void表示,可以省略不写return语句。函数被执行只能被调用。
代码示例:
public class FunctionTest {public static void main(String [] args){int sum = add(3,4);//调用add函数,返回值用sum接收System.out.println(sum);//输出sum}public static int add(int x,int y){//定义一个add函数,返回值类型为int,有两个参数,参数类型为intreturn x+y;//必须写返回语句。返回两个参数的和}}
运行结果:7
函数的重载:
什么是重载:在同一个类中,可以存在一个或一个以上的同名函数,只要参数个数、参数类型不同即可。函数的重载与返回值类型无关。
被调用的函数根据调用者所传的参数类型,参数个数决定的。
代码示例:
public class FunctionTest {public static void main(String [] args){int sum = add(3,4);//调用add函数,返回值用sum接收System.out.println(sum);//输出sumdouble sum1 = add(3.0,4.0);//调用返回值为double类型,有两个参数的的函数System.out.println(sum1);int sum2 =add(3,4,5);//调用返回值为int类型,有三个参数的函数。System.out.println(sum2);}public static int add(int x,int y){//定义一个add函数,返回值类型为int,有两个参数,参数类型为intreturn x+y;//必须写返回语句。返回两个参数的和}public static double add(double x,double y){//函数名一样,参数类型不一样,返回值类型不一样,是重载。return x+y;}public static int add(int x,int y,int z){//函数名一样,参数类型一样,参数个数不一样,是重载return x+y+z;}}
运行结果:
7
7.0
12
8)数组
8.1数组的概念:同一种类型数据的集合,数组是一个容器,数组的长度是固定的不可改变。
8.2定义数组的格式1:元素类型 [] 数组名 = new 元素类型 [元素的个数或数组的长度];
定义数组的格式2:元素类型 [] 数组名 = new 元素类型 []{元素,元素,.......};
数组引用没有指向实体,却在操作实体中的元素时,会发生空指针异常(NullPointerException)
例:
int[] arr = null;
System.out.println(arr[0]);
访问到数组中不存在的角标是,会发生角标越界异常(ArrayIndexOutOfBoundsException)
例:
int [] arr = new int [2];
System.out.println(arr[3]);
8.3数组的常见操作:
获取最大(最小)值:
代码示例:
package ArrayTest;public class ArrayMax {public static void main(String[] args) {int [] arr = {1,6,8,9,4,3,4};System.out.println("max="+getMax(arr));//调用getMax方法System.out.println("min="+getMin(arr));//调用getMin方法}public static int getMax(int [] arr){//定义获取最大值的函数int max = arr[0];//定义一个变量for(int x=0;x<arr.length;x++){//遍历数组if(arr[x]>max)//比较数组中的元素,记录大的值max=arr[x];}return max;}public static int getMin(int [] arr){//定义获取最小值的函数int max = arr[0];//定义一个变量for(int x=0;x<arr.length;x++){//遍历数组if(arr[x]<max)//比较数组中的元素,记录小的值。max=arr[x];}return max;}}
运行结果:
max=9
min=1
排序(冒泡,选择):
代码示例:
package ArrayTest;import java.util.Arrays;public class ArraySort {public static void main(String [] args){int [] arr = {1,4,3,6,8,3,4,5};//定义数组arr=selectSort(arr);//调用选择排序的方法System.out.println(Arrays.toString(arr));//使用数组工具输出数组arr=bobbleSort(arr);//调用冒泡排序的方法System.out.println(Arrays.toString(arr));//使用数组工具输出数组}public static int[] selectSort(int[] arr){//定义选择排序的方法for(int count=0;count<arr.length-1;count++){//外循环控制比较的第一个元素for(int index=count+1;index<arr.length;index++){//内循环控制比较的第二个元素if(arr[count]>arr[index]){//比较元素的大小int temp=arr[count];//置换位置arr[count]=arr[index];arr[index]=temp;}}}return arr;}public static int[] bobbleSort(int[] arr){//定义冒泡排序for(int count=0;count<arr.length-1;count++){//外循环控制循环比较的次数for(int index=0;index<arr.length-count-1;index++){//内循环控制单次比较的次数,-1防止角标越界if(arr[index]<arr[index+1]){//头一个元素和后一个元素比较int temp=arr[index];//置换位置arr[index]=arr[index+1];arr[index+1]=temp;}}}return arr;}}
运行结果:
[1, 3, 3, 4, 4, 5, 6, 8]
[8, 6, 5, 4, 4, 3, 3, 1]
8.4二维数组:
定义二维数组中的方式:
int [] [] arr=new int[3] [4];表示二维数组arr中有3个一维数组,每个以为数组中有4个元素。
int [] [] arr= {{元素,元素},{元素,元素,元素},{元素}}
-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
- Java学习笔记-语句-函数-数组
- Java学习笔记(二)--函数、函数重载、数组
- java数组学习笔记
- Java学习笔记--数组
- java学习笔记------数组
- java学习笔记 ---数组
- java学习笔记数组
- 【学习笔记】Java数组
- Java学习笔记-数组
- Java学习笔记-数组
- java学习笔记------数组
- java学习笔记-----数组
- java学习笔记--数组
- Java基础03天 学习笔记_循环|函数|数组
- 【黑马程序员】Java学习笔记之函数与数组
- 学习笔记 Java_毕向东_流程控制语句_函数_数组 2014.7.30
- Javascript学习笔记-1(类型、变量、for语句、数组、字符串、原型对象、函数对象)
- shell脚本之注释,数组,控制语句,函数【shell脚本的学习笔记二】
- Spark SQL-1-CLI方式
- uva 11045 uva 10330(EK最大流)
- 机器学习技法-1-Linear Support Vector Machine
- Jquery获取select,dropdownlist,checkbox下拉列表框的值
- lua学习笔记---Function(函数)
- Java学习笔记-语句-函数-数组
- Android系统架构
- linux shell命令之文件比较
- 还是不懂
- Sqlmap的sqlmapapi.py简单使用
- First Test
- Microsoft Techdays 2015 - Etat de lieux JavaScript
- 【Unity】常用脚本类的继承关系(入门篇)
- proteus C51源代码调试不能显示源代码的问题