变量:暂时存放数据的容器,变量是可以来回使用的
1)先声明再赋值
2)先声明再赋值----数据类型 变量名
int num;// 声明变量
num=4;//变量赋值
!!!注意:变量必须声明赋值后才能使用
int n=10;
System.out.println(n+15);
以下方法错误,未给m赋值
//int m;
//System.out.println(m+10);
变量的命名规则
字、下、美、人、数、骆驼
规定:
1.必须满足:字(字母)、下(下划线)、美($)、人(¥)、数(数字),数字不能开头 ,不能使用java关键字。
2.可以不满足:骆驼(驼峰命名法),多个单词组成变量名时,第一个单词首字母小写,之后的单词首字母大写。
int void_$¥11=10;
String mySchoolName="大连大学";
2. 常量常量:一旦赋值就不能改变数据,java通过关键字final定义常量
final修饰的变量是常量,赋值后不能更改
final int a=100;
System.out.println(a);
//a=50;
//System.out.println(a);//100
数据类型1. 基本数据类型Java中一共8种数据类型:byte、short、int、long、float、double、boolean、char
引用数据类型:String(字符串),数组
1.1 整数
btye-----(1字节=8位)
short----(2字节=16位)
int-------(4字节=32位)
long----(8字节=64字节)
!!!注意:整数类型默认是int类型
如果使用long类型变量,建议数字后面加“L”
1.2 浮点数
float-------(4字节=32位) 单精度浮点数
double----(8字节=64位) 双精度浮点数
!!!注意
浮点数默认是double类型 给float类型赋值时,数据后面必须加 “F” 或 “f”
给double类型赋值时,数据后面必须加 “D” 或 “d” ,或什么都不加
1.3 字符类型char
单个字符(2字节=16位)
java通过单引号定义char
char可以来存放单个字母、数字、汉字
java采用unicode编码
1.4 布尔类型boolean
值只能是true和false
long b=100000L;
float c=1.5f;
double e=1.32;
char sex='男';
char aa=12;
System.out.println(aa);
boolean bool=true;
boolean bool1=false;
2. 数据类型转换(仅限于数字类型)精度由低到高:byte
自动类型转换:低精度数值赋值给高精度的变量,进行自动做转换
强制类型转换:高精度的赋值赋值给低精度的变量需要强制类型转换
//自动类型转换
long cc=100;
double dd=1.23f;
double ee=10;
//强制类型转换
int bb=(int)100L;
int ff=(int)12.94f;
System.out.println(ff);//12 !!!只会保留整数
浮点数的数值赋值给整数变量需要强制类型(取整)
不同类型数值参与计算时,首先低精度自动往高精度转换,类型一直后在进行计算
总结:Java表达式类型转换规则(由低到高)
1)所有的byte、short、char类型的值将提升为int类型
2)如果表达式中有一个操作数是long类型,计算结果是long类型
3)如果表达式中有一个操作数是float类型,计算结果是float类型
4)如果表达式中有一个操作数是double类型,计算结果是double类型
double gg=2+1.5f+3.5d;
System.out.println(gg);//2.0+1.5d+3.5d=7.0
int hh=(int)(2+1.5f+3.5d);//(int)7.0
System.out.println(hh);//7
int jj=2+(int)1.5f+(int)3.5d;//2+1+3
System.out.println(jj);//6
运算符
1. 算数运算符+, -,*,/,%, ++, --, +=
int i=1;
System.out.println(++i);//先+1再赋值
System.out.println(i++);//先赋值再+1
==:判断两边值是否相等
===:类型是否相等
3. 逻辑运算符>,< , = , >= , == , !=
&& 与(两边表示同时满足才能是true)
|| 或 (其中有一个满足结果就是true)
! 非
int i=3;
System.out.println(i>8||i<4);//ture
System.out.println(!(i>8));
4. 三目运算符流程控制语句 1. 单分支(二选一)判断条件?结果1:结果2
if(i>8){ System.out.println("yes");
}else{ System.out.println("no");
}
// 条件判断
2. 双分支if(i>=2){ System.out.println("111");
}
if(i>=3){ System.out.println("222");
}
3. 多分支语句
3.1 if-else if-ifint score=90;
if(score>=90){System.out.println("优秀");
}else if(score>80){System.out.println("良好");
}else if(score>60){System.out.println("及格");
}else{System.out.println("不及格");
}
3.2 switchint i1=55;
int j=i1/10;
System.out.println("j="+j);
switch (j){ case 9:
System.out.println("优秀");
break;
case 8:
System.out.println("良好");
break;
case 7:
System.out.println("良好");
break;
case 6:
System.out.println("及格");
break;
default:
System.out.println("不及格");
}
循环
1. for循环for(初始变量;初始变量的范围;初始值更新)
for(int a=1;a<=10;a++){ if(a==5){ //break;//跳出循环
continue;//结束本次循环进入下一次循环
}
System.out.print(a+",");
}
System.out.println();
2. 双重循环for(int k=1;k<=4;k++){// 外层给控制行
for(int h=1;h<=5;h++){ // 里层控制列
System.out.print("#");
}
System.out.println();
}
// #####
// #####
// #####
// #####
3. while循环
3.1 while先判断再执行,如果不满满足,一次都不会执行
int b=1;
while(b<10){ System.out.print(b+" ");
b++;
}
3.2 do-while先执行再判断,如果条件不满足,至少执行一次
int a=1;
do{System.out.print(a+"");
a++;
}while (a<=5);
数组定义:一类数据的集合
数据的分类:基本类型数组,类类型数组
1. 一维数组 1.1 创建一维数组方式一
int[ ] arr1;
arr1=new int[4];//动态创建,默认值为0
方式二
int[ ] arr2 = new int[ ] { 2 , 4 , 5 , 3 } ;
方式三(常用)
1.2 遍历数组int[ ] arr3 = { 12 , 23 , 56 , 89 } ;
方式一:for循环,i代表下标
//arr3的遍历一
for(int i=0;i System.out.print(arr3[i]+" ");
}
System.out.println();
//!!!查看arr3时查看的是地址,arr[0]是对应的值
方式二:foreach(j代表数组的一个元素)
//arr3的遍历二
for(int j:arr3){ System.out.print(j+" ");
}
System.out.println();
1.3 类类型数据整数类型:0
浮点型:0.0
String:null
boolean:false
String[] strs=new String[3];
System.out.println("strs:"+strs[0]);//null
boolean[] strs1=new boolean[3];
System.out.println("strs1:"+strs1[0]);//false
1.4 复制数组System. arraycopy ( copy数组 , 开始下标 , paste数组 , 开始下标,copy长度 ) ;
int[] arr4={3,6,1,7};
int[] brr4=new int[4];//创建一个动态数组
System.arraycopy(arr4,0,brr4,0,4);
for (int i=0;i System.out.print(brr4[i]+" ");
}//3 6 1 7
2. 二维数组
2.1 创建二维数组方式一
int[ ][ ] a1 = new int[3][4];
方式二:
int[ ][ ] a2 = new int[3][ ];
a2[0] = new int[1];
a2[1] = new int[3];
a2[2] = new int[2];
a2[0][0] = 22;
方式三:
int[ ][ ] a3 = { {3} , { 3 , 5 , 6 } , { 5 , 6 } , {1} };
//长度输出只输出高维
System.out.println(a3.length);//3
2.2 遍历二维数组for(int i=0;ifor(int j=0;jSystem.out.print(a3[i][j]+" ");
}
System.out.println();
}
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧