Java语言四种最基本的原始数据类型
1、 整型(int)
2 、浮点型(double)
3 、布尔型(boolean)
4 、字符型(char)
Java运算符优先级
1、运算符*和/,(以及%)的优先级高于+和-
2、在逻辑运算符中,优先级依次为!、 &&、||
Java类型转换
1、将浮点型转换为整型将会截断小数部分而非四舍五入
2、尽量少使用类型转换, 最好在表达式中只使用同一类型的字面量和常量。所谓字面量就是指由字母,数字等构成的字符串或者数值,它只能作为右值出现。如:int a=123 其中123 就是字面量。
Java语句
1、声明语句:创建某种类型的变量并用标识符为其命名
2、赋值语句:将某种类型的数值赋予一个变量
3、条件语句:根据指定条件执行的语句
if(<boolean expression>){<block statements>}
else{<block statements>}
4、循环语句:满足指定条件重复执行的语句,执行break,立即从循环中退出, 执行continue,则立即开始下一轮循环
for(<initialize>;<boolean expression>;<increment>)
{<block statements>}
while(<boolean expression>)
{<block statements>}
5、调用语句:调用另一个方法 如int nums = stdIn.readInt();
6、返回语句:根据指定返回类型执行的语句 如return false;
Java数组
1、创建数组 如 int[] nums = {1, 2, 3, 4, 5};
2、使用数组:典型数组处理
// 找出数组中最大的元素
double max = nums[0];
for(int i=1;i<nums.length;i++){
if(nums[i]>max){
max = nums[i]
}
}
// 计算数组元素的平均值
double sum = 0.0;
for(int i=0;i<nums.length;i++){
sum +=nums[i];
}
double average = sum / nums.length;
// 复制数组
double[] d = new double[nums.length];
for(int i=0;i<nums.length;i++){
d[i]=nums[i];
}
// 颠倒数组元素的顺序
for(int i=0;i<nums.length/2;i++){
double temp = a[i];
a[i] = a[nums.length-1-i];
a[nums.length-1-i] = temp;
}
3、使用二维数组:M行长度为N的数组的二维数组
double[][] nums = new double[M][N];
Java 静态方法
1、使用静态方法
// 判定一个数是否是素数
public static boolean isPrime(int nums){
if(nums<2){
return false;
}
for(int i=2;i*i<=nums;i++){
if(nums%i ==0){
return false;
}
else{
return true;
}
}
}
2、调用静态方法 如Math.abs();
Java 递归
编写递归代码时最重要的有以下三点
- 递归总有一个最简单的情况 - 方法的第一条语句总是一个包含return的条件语句
- 递归调用总是去舱室解决一个规模更小的子问题
- 递归调用的父问题和尝试解决的子问题之间不应该有交集
Java 字符串
类型转换
static int parseInt(String s); 将字符串s转为整数
static String toString(int i); 将整数i转换为字符串
static double parseDouble(String s); 将字符串s 转为浮点数
static String toString(double x); 将浮点数x转换为字符串
Java 二分查找
import java.util.Arrays;
public class BinarySearch
{
public static int rank(int key, int[] nums){
// 数组必须是有序的
int startIndex = 0;
int endIndex = nums.length - 1;
while (startIndex<=endIndex){
// 被查找的键要么不存在 要么必然存在于a[lo...hi]中
int mid = startIndex + (endIndex-startIndex)/2;
if(key<nums[mid]){
endIndex = mid - 1;
}
else if(key>nums[mid]){
startIndex = mid + 1;
}
return -1;
}
return 0;
}
public static void main(String[] args) {
int[] nums = {1,2,444,-666,25,44,43,5,32,4,-9,22,0};
Arrays.sort(nums);
int key = -666;
if(rank(key,nums)<0){
System.out.println(key);
}
}
}
网友评论