java基础应用循环的应用
1.1 【经典面试题】:
&&(短路与)与&(非短路与)的区别:
表达式1 && 表达式2
表达式1如果为false,表达式2不执行,整个表达式结果为false。
表达式1 & 表达式2
无论表达式1是否为ture,表达式都2依然执行。
【相同点】:
&& & 都满足,见false为false的特点。
String :字符串类型 “”
||(短路或) |(非短路或)
for循环嵌套
for(){
//外循环
for(){
//内循环
}
}
* * * * * * * * * *
* * * * * * * * * *
* * * * * * * * * *
* * * * * * * * * *
* * * * * * * * * *
* *
* *
* * * * * * * * * *
*
* *
* * *
* * * *
* * * * *
* * * * * *
package day03;
/**
* 直三角形的*号输出
* @author Brucelong
* */
public class RightTriangle {
public static void main(String[] args) {
for(int i = 1;i<=9;i++) {
for(int j= 1;j<=i;j++) {
System.out.print("*");
}
System.out.println("");
}
}
}
实心的等腰三角形
package day03;
import javax.swing.JOptionPane;
/**
* java 用函数打印n行星号组成的等腰三角形
* @author Brucelong
* */
public class IsoscelesTriangletest {
public static void main(String[] args) {
String n = JOptionPane.showInputDialog("请输入一个数字:");// 直接输入行号
int l = Integer.parseInt(n);
int k = l;
for (int i = 1; i <= k; i++) {
for (int j = k; j >=i; j--) {
System.out.print(" ");
//l--;
}
for (int j = 1; j <= i*2-1; j++) {
System.out.print("*");// 显示星星
}
System.out.println();
}
}
}
下午课程内容
1.for循环嵌套,经典案例:九九乘法表
2.数组
3.天天酷跑项目分析
明天:写项目
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
package day03;
/**
* 经典案例
* 九九乘法表
* @author Brucelong
* */
public class MultiplicationTable {
public static void main(String[] args) {
for(int i = 1;i<=9;i++) {//外循环
for(int j= 1;j<=i;j++) {//内循环
System.out.printf("%d * %d = %d ",j,i,i*j);
}
System.out.println();
}
}
}
for(int i = 1;i<=9;i++) {//外循环
for(int j= 1;j<=i;j++) {//内循环
System.out.printf("%d * %d = %d ",j,i,i*j);
//System.out.print(j+"*"+i+"="+(i*j)+" (tab键)或用转义字符\t");
}
System.out.println();
}
package day03;
/**
* 课后作业题
* 1+1/1/2+1/3+1/...+1/9
* @author Brucelong
* */
public class HomeWork01 {
public static void main(String[] args) {
double sum = 0;
for(int i =1;i<=9;i++) {
sum=sum+1.0/i;
//System.out.printf("1/%d+",i);
}
System.out.println("sum = "+sum);
}
}
【数组】:
1.笔试题:
创建数组的两种方式工:
a 静态创建
数据类型 [] 数组名 = {数组元素1,数组元素2,……};
int [] arr = {1,2,3,4,5};//直接赋值给数组
// 0 1 arr.length-1
arry[5]数组下标越界异常
数组的标识:[]
数组的下标
int a;a =1;//没有问题
int [] arr;arr = {1,2,3,4};//是有问题的
b 动态创建
int [] arr = new int[5];//只创建空间没有赋值元素
最小的下标是:0
最大的下标是:arr.length-1
数组元素的复制:
int的默认值是0,boolean默认值是flase
数组的扩容和缩容(本质的实现数组的复制)
数组元素的删除
数组折快速排序