标签:
1,常用的原始数据类型
int 整数
float,double 浮点数,double 相对float 范围更宽
boolean 布尔值
EX:(1+14)/2
用int 来表示,就只会得到整数部分,不会得到小数部分
用float,double来表示,要加f或d才会得到小数部分
int a=(1+14)/2; float b=(1+14)/2f; double c=(1+14)/2d;
布尔值是判断true 或者 false 的数据类型,其中会用到一些逻辑运算符,如 &&,||,前者表示AND,后者表示OR,还有==,!=表示相等与不相等.
EX:
boolean d= 1==0;
因为1肯定不等于0,所以d=false
2,数据类型之间的转换
(1)自动转化
首先要导入一个包
import java.util.Scanner;
Scaner 的两种用法:
1
整型: int a=new Scanner(System.in).nextInt();
浮点: float b=new Scanner(System.in).nextFloat();
String d=sc.next();
String e=sc.nextLine();
这时候,命令行输入 "q we",d输出"q" e输出" we",
5,java基础语句
详情见另一篇博客
http://www.cnblogs.com/listencat/p/5328332.html;
6,数组
one 创建并初始化数组
在java中,创建一个数组需要三步:
(1)声明数组的名字和类型;
在声明数组时,要指定数组名称,和它含有的数据的数据类型
(2)创建数组;
在创建数组时,要指定数组的长度(范围或元素的个数)
(3)初始化数组元素;
常用的创建数组方式:
1) int [] a=new int[N];(N表示长度)
2) int [] a={1,2,3,...};
two 使用数组
在声明与创建数组后,可以通过数组名之后的方括号中的索引来访问其中的元素.数组一经创建,大小就固定了.可以使用a.length
获取数组的长度,数组的最后一个元素为a.length-1,第一位为0,若使用小于0火大于a.length-1的索引访问数组,会抛出异常
一些典型的数组处理代码
//N自取 int [a]=new int[N]; //找出数组中最大的元素 double max= a[0]; for(int i = 1; i < a.length-1; i++){ if(a[i]>max){ max=a[i]; } } //计算数组元素的平均值 int n=a.length; double sum=0.0d; for (int i =0; i<n;i++){ sum +=a[i]; } double average = sum/n; //复制数组 int n =a.length; double [] b=new double[n]; for(int i=0;i<n;i++){ b[i]=a[i]; } //颠倒数组元素的顺序 int n=a.length; for(int i=0;i<n/2;i++){ double temp =a[i]; a[i]=a[n-1-i]; a[n-1-i]=temp; }
three 二维数组
在java中二维数组就是一维数组的数组.第一维可以看做行数,第二维可以看做列数
EX:int [][] a=new int[N][N];
7,静态方法
方法需要参数(EX:int)并根据参数计算出某种数据类型的返回值或者产生某种作用(如打印一个值).
静态方法解析
一些典型的静态方法
//计算一个整数的绝对值 public static int abs(int a){ if (a<0){ return -x; }else{ return x; } } //计算一个浮点数的绝对值 public static double abs(double a){ if(a<0){ return -x; }else{ return x; } } //判断一个数是否是素数 public static boolean isprime(int a){ if(a < 2){ return false; }else if(a==2 || a==3){ return true; } for(int i =2; i*i <=a;i++){ if(a%i==0){ return false; }else{ return true; } } return false; }
调用静态方法
调用静态方法的方法是写出方法名并在后面的括号中列出参数值,用逗号分隔.当调用的是表达式的一部分时,方法的返回值将会替代表达式中的方法调用.
递归
方法可以调用自己
二分查找的递归
public static int rank(int b,int[]a){ return rank(b,a,0,a.length-1); } private static int rank(int b, int[] a, int i, int j) { //如果b存在于a[]中,它的索引不会小于i且不会大于j if(i>j){ return -1; } int c=i+(j-i)/2; if(b<a[c]){ return rank(b,a,i,c-1); }else if(b>a[c]){ return rank(b,a,c+1,j); }else{ return c; } }
标签:
原文地址:http://www.cnblogs.com/listencat/p/5351655.html