最近在本人电脑上查找java的东西找了半天没早到,于是也逐渐整理晒出来!
1.1 java控制流
1 import java.util.*; 2 /* 3 控制流一共分为三种: 4 第一种:顺序结构 5 代码从上往下顺序执行 6 7 第二种:分支结构(判断结构) 8 if-else语句 9 格式一: 10 if(条件){ 11 满足条件执行的代码 12 } 13 14 格式二: 15 if(条件){ 16 满足条件执行的代码 17 }else{ 18 不满足条件执行的代码 19 } 20 21 两个分支必定会执行一个 22 注意:如果不写大括号,默认满足条件执行的代码为下面的第一行代码(第一条语句) 23 24 格式三: 25 if(条件1){ 26 满足条件1要做的事情 27 }else if(条件2){ 28 满足2条件要做的事情 29 }else if(条件3){ 30 满足3条件要做的事情 31 } 32 ……. 33 else{ 34 所有条件都不满足,执行此代码块的代码 35 } 36 37 else分支可以有也可以没有 38 39 ---------------------------------------------- 40 switch-case语句 41 格式: 42 43 switch(){ 44 case 'A' : 45 46 break; 47 case 'B' : 48 break; 49 case 'C' : 50 break; 51 case 'D' : 52 break; 53 default : 54 选择有误 55 } 56 1.switch()内只能是类型只能是byte,short ,int ,char(一般都是转成int之后再匹配) 57 JDK1.7之后可以使用 String ,枚举类型 58 2.如果一个case:后面不加break;程序会一直往下执行 59 60 ------------------------------------------------------- 61 62 第三种:循环结构 63 while循环 64 格式: 65 66 while(条件){ 67 满足条件执行的代码 68 } 69 先判断条件,成立执行代码一次 70 之后继续判断条件,成立继续执行代码 71 ... ... 72 直到条件不成立,终止while循环 73 具体如下: 74 int i=0;(迭代条件的初始值) 75 while(i怎么样,(迭代条件)){ 76 循环体(可以实现累加作用) 77 i++; 78 } 79 控制顺序:先判断条件,{1.条件符合执行循环体,并再判断条件 80 2.条件不符合,不执行循环体,直接退出循环 81 注意:循环次数不确定,使用 82 --------------------------------------------------- 83 do-while循环 84 格式: 85 do{ 86 循环体; 87 }while(条件); 88 89 具体入下: 90 int i=0(迭代条件初始值) 91 do{ 92 循环体 93 i++; 94 }while(迭代条件) 95 96 控制顺序:先执行一次循环体{1.判断条件,符合执行下一次 97 2.不符合直接跳出循环 98 -------------------------------------------------------- 99 for循环 100 格式: 101 for(初始化语句;循环条件;循环后的语句){ 102 循环体; 103 } 104 具体: 105 for(int i=0;i<100;i++){ 106 循环体; 107 } 108 控制顺序:先判断条件,{1.条件符合执行循环体,并再判断条件 109 2.条件不符合,不执行循环体,直接退出循环 110 注意:如果循环次数确定选择使用for 111 */ 112 public class Kongzhiliu { 113 114 public static void main(String[] args) { 115 /* 116 // 1.随机数与扫描器 117 Scanner s =new Scanner (System.in);//创建键盘扫描器 118 int a=s.nextInt();//用于接收键盘输入 119 //------------------------------------ 120 Random r = new Random();//创建一个随机数生成对象 121 int b =r.nextInt(10);//接收一个在0-9之间的随机数 122 //------------------------------------ 123 System.out.println(a); 124 System.out.println(b); 125 */ 126 //-------------------------------------------------------------- 127 /* 128 //2.break与continue与flag(如果把这些语句直接放在for()内是没有任何意义的。相当一次结束循环) 129 130 for(int i = 0;i < 5;i++){ 131 if(i == 3){ 132 break; 133 } 134 System.out.println(i); 135 } 136 //输出结果应该是:0,1,2 { i==3-->break--xx-->System}在执行到break,(一,不接着执行完下面的循环体 二,直接结束循环) 137 //----------------------- 138 for(int i = 0;i < 5;i++){ 139 if(i == 3){ 140 continue; 141 } 142 System.out.println(i); 143 } 144 //输出结果应该是:0,1,2,【】,4在执行到continue时就不再执行下面的循环体,但没有结束循环 145 146 //-------------------- 147 boolean flag=true; 148 for(int i = 0;flag==true;i++){ 149 if(i == 3){ 150 flag=false; 151 } 152 153 System.out.println(i); 154 } 155 //输出的结果:0,1,2,3 在执行完整个循环体之后才结束循环 156 //----------------------- 157 158 for(int i = 0;i < 5;i++){ 159 160 System.out.println(i); 161 //continue; 162 break; 163 } 164 //输出结果:0,1,2,3,4:没有意义 165 //输出结果:0:没有意义 166 167 //------------------------------ 168 for(int i = 0;i < 5;i++){ 169 if(i == 3){ 170 return; 171 } 172 System.out.println(i); 173 } 174 //输出结果应该是:0,1,2不仅结束了循环而且还结束整个程序 175 176 */ 177 //------------------------------------------------------- 178 //3.lab的使用:使用lab来跳出嵌套循环 179 //完全输出: 180 //***** 181 //***** 182 //***** 183 //***** 184 //***** 185 /* 186 lab1:for(int j=0;j<5;j++){ 187 lab2:for(int i = 0;i < 5;i++){ 188 if(i == 3){ 189 //break lab1;//*** 190 break lab2;//***再乘以5列 191 } 192 System.out.print("*");//内层一般不要换列,要换列是一条竖线 193 } 194 System.out.println(" ");//外层需要换行,不换行是一条横线 195 } 196 197 //------------------------------------ 198 lab1:for(int j=0;j<5;j++){ 199 if( j== 3){ 200 201 //break lab1;//*****乘以3列,此时没有办法结束内层的lab2 202 } 203 204 lab2:for(int i = 0;i < 5;i++){ 205 206 System.out.print("*");//内层一般不要换列,要换列是一条竖线 207 } 208 209 210 System.out.println(" ");//外层需要换行,不换行是一条横线 211 212 } 213 */ 214 215 216 217 218 219 220 } 221 222 }